JAVA算法40题练习
本资源涵盖了 JAVA 语言中常用的算法,包括古典问题的解决、素数判断、水仙花数的输出、函数编写、质因数分解、条件运算符的使用、最大公约数和最小公倍数的求解、字符统计、数列求和、完数判断、自由落体运动、数字排列、三位数组成、奖金计算、完全平方数判断、日期判断、排序算法、口诀输出、递归方法等。
1. 古典问题:古典问题是指兔子繁殖问题,即有一对兔子,从出生后第 3 个月起每个月都生一对兔子,小兔子长到第四个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子总数为多少?这个问题可以使用递归方法来解决。
2. 素数判断:素数是指大于 1 的自然数,同时它的因子只有 1 和它本身。可以使用判断语句来确定一个数是否为素数。
3. 水仙花数:水仙花数是指一个三位数,其各位数字立方和等于该数本身。例如:153 是一个水仙花数,因为 153=1 的三次方+5 的三次方+3的三次方。可以使用循环控制来输出所有的水仙花数。
4. 函数编写:函数编写是指编写一个函数,输入 n 为偶数时,调用函数求 1/2+1/4+...+1/n,当输入 n 为奇数时,调用函数 1/1+1/3+...+1/n。
5. 质因数分解:质因数分解是指将一个正整数分解质因数。例如:输入 90,打印出 90=2*3*3*5。
6. 条件运算符:条件运算符是指使用条件语句来完成某些操作。例如:学习成绩>=90 分的同学用 A 表示,60-89 分之间的用 B 表示,60 分以下的用 C 表示。
7. 最大公约数和最小公倍数:最大公约数和最小公倍数是指两个正整数的最大公约数和最小公倍数。
8. 字符统计:字符统计是指统计出其中英文字母、空格、数字和其它字符的个数。
9. 数列求和:数列求和是指将一个数列的所有项相加。例如:2+22+222+2222+22222。
10. 完数判断:完数是指一个数如果恰好等于它的因子之和,这个数就称为完数。例如 6=1+2+3。
11. 自由落体运动:免费落体运动是指一球从 100 米高度自由落下,每次落地后反跳回原高度的一半;再落下,求它在第 10 次落地时,共经过多少米?
12. 数字排列:数字排列是指有 1、2、3、4 个数字,能组成多少个互不相同且无重复数字的三位数?
13. 奖金计算:奖金计算是指根据利润提成,计算应发放奖金总数。
14. 完全平方数判断:完全平方数是指一个整数,它加上 100 后是一个完全平方数,加上 168 又是一个完全平方数。
15. 日期判断:日期判断是指输入某年某月某日,判断这一天是这一年的第几天?
16. 排序算法:排序算法是指输入三个整数 x,y,z,请把这三个数由小到大输出。
17. 口诀输出:口诀输出是指输出 9*9 口诀。
18. 猴子吃桃问题:猴子吃桃问题是指猴子第一天摘下若干个桃子,当即吃了一半,还不瘾,又多吃了一个 第二天早上又将剩下的桃子吃掉一半,又多吃了一个。以后每天早上都吃了前一天剩下的 一半零一个。到第 10 天早上想再吃时,见只剩下一个桃子了。求第一天共摘了多少。
19. 乒乓球比赛:乒乓球比赛是指两个乒乓球队进行比赛,各出三人。甲队为 a,b,c 三人,乙队为 x,y,z 三人。已抽签决定比赛名单。有人向队员打听比赛的名单。a 说他不和 x 比,c 说他不和 x,z 比,请编程序找出三队赛手的名单。
20.菱形图案:菱形图案是指打印出如下图案:* * * * *
21. 数列和:数列和是指有一分数序列:2/1,3/2,5/3,8/5,13/8,21/13...求出这个数列的前 20 项之和。
22. 递归方法:递归方法是指利用递归方法求 5!。
本资源涵盖了 JAVA 语言中常用的算法,包括古典问题的解决、素数判断、水仙花数的输出、函数编写、质因数分解、条件运算符的使用、最大公约数和最小公倍数的求解、字符统计、数列求和、完数判断、自由落体运动、数字排列、三位数组成、奖金计算、完全平方数判断、日期判断、排序算法、口诀输出、递归方法等。