`
diarbao
  • 浏览: 14282 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

JAVA一些基础算法

阅读更多
复习一下JAVA的基础算法

1.题目:古典问题:有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第四个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子总数为多少?
View Code 

public class mainTest {
    /**
     * 题目:古典问题:有一对兔子,从出生后第3个月起每个月都生一对兔子,
     * 小兔子长到第四个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子总数为多少?
     * 规律:1.1.2.3.5.8.13
     */
    public static void main(String[] args) {
        System.out.println(f(3));
    }
    public static int f(int i){
        if(i==1||i==2){
            return 1;
        }else{
            return f(i-1)+f(i-2);
            }
    }
}

2.题目:判断101-200之间有多少个素数,并输出所有素数。结果为101,103,107,109,113,127,131,137,139,149,151,157,163,167,173,179,181,191,193,197,199
View Code 

public class mainTest {
    /**
     * 思路:素数是只能被自身跟1整除的数。循环i从101-200.与比i小的数(又一个循环j,从2到i)求余,
     * 如果i%j==0并且i!=j说明i可以被其他数整除,则跳出循环,
     * 如果i不可以被j的任何数整除,
     * 只有当i==j的时候才可以整除(就是被自身整除)就为素数  
     */
    public static void main(String[] args) {
        for (int i = 101; i < 201; i++) {
            int flag = 0;
            for (int j = 2; j <= i; j++) {
                if (i % j == 0 && i != j) {
                    break;
                } else if (i == j) {
                    flag = 1;
                }
            }
            if (flag == 1) {
                System.out.print(i+",");
            }
        }
    }
}

3题目:打印出1000以内所有的 "水仙花数 ",所谓 "水仙花数 "是指一个三位数,其各位数字立方和等于该数本身。例如:153是一个 "水仙花数 ",因为153=1的三次方+5的三次方+3的三次方。结果:153,370,371,407、
View Code 

public class mainTest {
/**
 * 主要分别取得个位数就好了。
 * @param args
 */    
    public static void main(String[] args) {
        for (int i = 100; i < 1000; i++) {
            math(i);
        }
    }
    public static void math(int i){
        int i3=i%10;//个位数
        int i2=(i%100)/10;//十位数
        int i1=i/100;//百位数
        if(i==(i1*i1*i1)+(i2*i2*i2)+(i3*i3*i3)){
            System.out.println(i);
        }
        
        
    }
}

4.题目:利用条件运算符的嵌套来完成此题:学习成绩> =90分的同学用A表示,60-89分之间的用B表示,60分以下的用C表示。  
View Code 

public class mainTest {
    /**
     * 学习成绩> =90分的同学用A表示,60-89分之间的用B表示,60分以下的用C表
     */
    public static void main(String[] args) {
        test(90);
    }
    public static void test(int i){
        String s ="";
        s=(i<60)?"C":(i>=90?"A":"B");
        System.out.println(s);
            
    }
    
}

5.题目:一球从100米高度自由落下,每次落地后反跳回原高度的一半;再落下,求它在   第10次落地时,共经过多少米?第10次反弹多高
View Code 

public class mainTest {
    /**
     * 一球从100米高度自由落下,每次落地后反跳回原高度的一半;
     * 再落下,求它在   第10次落地时,共经过多少米?第10次反弹多高? 
     */
    public static void main(String[] args) {
        double s =0;
        double h =100;
        
        for (int i = 1; i < 11; i++) {
            s+=h;
            System.out.println(s);
            h=h/2;
            System.out.println(h);
        }
        System.out.println(s);
    }
    
}

6.题目:有1、2、3、4个数字,能组成多少个互不相同且无重复数字的三位数?都是多少?
View Code 

public class mainTest {
    /**
     *题目:有1、2、3、4个数字,能组成多少个互不相同且无重复数字的三位数?都是多少?   
     * 
     */
    public static void main(String[] args) {
        int t=0;
        for (int i = 1; i < 5; i++) {
            int s1=i;
            for (int j = 1; j < 5; j++) {
                int s2=j;
                for (int k = 1; k < 5; k++) {
                    int s3=k;
                    String s= String.valueOf(s1)+String.valueOf(s2)+String.valueOf(s3);
                    if(s1!=s2&&s1!=s3&&s2!=s3){
                        t++;
                    System.out.println(s);
                    }
                }
            }
            
        }
        System.out.println(t);
    }    
}
分享到:
评论

相关推荐

    JAVA零基础算法练习题

    "JAVA零基础算法练习题"就是针对这样的需求而设计的一系列练习题目,旨在帮助初学者提升对Java语言的理解和运用,同时培养解决问题的能力。 首先,让我们深入了解一下算法。算法是一系列精确的规则或步骤,用于解决...

    java基础算法

    以上是Java基础算法的一些主要类别和常见算法,通过理解和掌握这些算法,开发者可以更好地解决实际问题,提升程序性能。在实际开发中,根据具体场景选择合适的算法,能有效地提高代码质量和运行效率。

    java基础算法训练

    "Java基础算法训练"主要涉及了对Java语言中的算法应用和语法的理解与实践。这个训练集包含了各种难度的题目,旨在帮助开发者提升在实际编程中运用算法的能力。下面我们将深入探讨其中可能涵盖的知识点。 1. **基础...

    Java基于遗传算法的自动排课系统源码.zip

    Java基于遗传算法的自动排课系统源码.zipJava基于遗传算法的自动排课系统源码.zipJava基于遗传算法的自动排课系统源码.zipJava基于遗传算法的自动排课系统源码.zipJava基于遗传算法的自动排课系统源码.zipJava基于...

    随机森林算法java数据挖掘算法源码.rar

    在Java中实现随机森林算法,需要理解以下几个关键概念和技术: 1. **决策树**:决策树是一种基本的分类与回归方法,通过一系列特征判断进行决策。在随机森林中,每个树都是一个独立的决策树模型。 2. **Bootstrap...

    五子棋 java版 博弈算法

    总之,这个五子棋Java版项目涵盖了棋盘游戏的基础设计、游戏逻辑实现和博弈算法的运用,对于学习和实践游戏开发、算法设计以及Java编程都是很好的案例。通过深入理解和实现该项目,开发者不仅能提升编程技能,还能...

    一些java基础算法、leetcode刷题 Java学习资料

    在Java的学习过程中,掌握基础算法和刷题是提升编程能力的重要环节。LeetCode是一个在线平台,提供了大量的编程题目,旨在帮助程序员提升算法思维和解决实际问题的能力。本Java学习资料主要涵盖这两方面,为初学者和...

    java基础及小算法练习

    java基础及小算法练习 包括水仙花 经典小兔子生兔子 素数 最大公约数 最小公倍数 完数 求s=a+aa+aaa+aaaa+aa...a 等等

    基础算法Java实现源码.zip

    基础算法Java实现源码.zip基础算法Java实现源码.zip基础算法Java实现源码.zip基础算法Java实现源码.zip基础算法Java实现源码.zip基础算法Java实现源码.zip基础算法Java实现源码.zip

    几个推荐算法的java实现

    本项目提供了一些推荐算法的Java实现,包括slopeone、SVD(奇异值分解)以及基于物品邻接的SVD(ItemNeighborSVD)。下面我们将详细探讨这些算法及其在Java中的实现。 1. **slopeone**: - Slope One是一种简单的...

    java算法设计算法

    Java算法设计涵盖了许多核心编程概念,是解决复杂问题的关键工具。这个压缩包文件包含了各种算法的实现,让我们逐一探讨它们。 1. **排序算法**:排序是数据处理的基础,这里可能包括了各种经典排序算法,如快速...

    java最新经典算法源码

    在"java最新经典算法源码"这个压缩包中,包含了一系列与Java编程相关的资源,特别是针对Java基础编程和算法的实践练习。这些资源对于学习者提升编程技能,以及准备Java面试来说非常有价值。 首先,`java基础编程...

    Java实现kNN算法

    Java实现k近邻(kNN)算法是机器学习领域中一种基础且重要的算法,主要用于分类和回归问题。kNN算法基于实例的学习,它不预先建立任何模型,而是将新数据分类或预测为与其最近的k个训练样本中最常见的类别。在这个讨论...

    java笔试面试算法题

    1. **基础算法**:如冒泡排序、插入排序、选择排序、快速排序、归并排序等,理解它们的原理、时间复杂度和空间复杂度,以及在不同场景下的适用性。 2. **链表操作**:包括单链表、双链表、环形链表的创建、遍历、...

    JAVA基础算法编程题

    本资源“JAVA基础算法编程题”旨在帮助初学者和进阶者巩固算法基础,提升编程能力。这份资料包含了一些经典的数学题目,并提供了相应的解答,对于学习和理解算法有着极大的帮助。 首先,让我们来了解一下算法。算法...

    java经典算法 java经典算法

    这些经典的Java算法示例展示了基础的数学逻辑和编程技巧,包括循环、条件判断、数组操作以及基本的数学运算。理解并掌握这些算法可以帮助开发者提升编程能力和问题解决能力,特别是在处理数值计算、数据分析或优化...

    java算法全卷(包括基本算法和图算法)

    基本算法是所有编程语言的基础,Java也不例外。这些算法通常涉及数据结构(如数组、链表、栈、队列、树和图)、排序与搜索问题,以及递归和动态规划等概念。以下是一些关键知识点: 1. 排序算法:包括冒泡排序、...

    Java数值计算算法编程

    一、Java基础与数值计算 在进行数值计算之前,我们需要对Java的基础语法有深入理解,包括变量、数据类型(如整型、浮点型、双精度型)、运算符(算术、比较、逻辑等)以及控制流程(如循环、条件语句)。这些基础...

    Java 常用数值算法集

    以上仅是部分Java中常用的数值算法,实际的"Java 常用数值算法集"可能包含了更丰富的实现,包括更多复杂的算法和优化。通过这些算法,开发者可以解决各种实际问题,提高代码的科学计算能力。在使用时,应根据具体...

    BP.rar_BP_bp 神经网络 java 算法_bp 预测_java BP预测算法_预测算法java

    总的来说,这个BP神经网络Java实现为理解和实践预测算法提供了一个基础平台,对于学习和研究神经网络算法的开发者来说,是一个有价值的资源。通过深入研究源代码,我们可以更深入地理解BP算法的工作原理,以及如何在...

Global site tag (gtag.js) - Google Analytics