【JAVA_SE】作业练习1029
来源:互联网 发布:dchp mac地址 时间 编辑:程序博客网 时间:2024/06/07 07:04
1.有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子,假如兔子都不死,问第二十个月的兔子对数为多少?(使用递归去解决)
public class Demo1 { public static void main(String[] args) { System.out.println(f(20)); int sum=0; for(int i=1;i<=20;i++){ sum+=f(i); } System.out.println(sum); } public static int f(int n){ if (n==1||n==2){ return 1; } return f(n-1)+f(n-2);//递推公式 }}
2.定义一个数组,比如:int[] arr = {13,24,57,69,80}使用二分查找查找这个数组中的24元素对应的索引
public class Demo2 { public static void main(String[] args) { int[] arr = {13,24,57,69,80}; System.out.println(getNumber(arr,24));//1 } public static int getNumber(int [] arr,int target){ int max=arr.length-1; int min=0; int mid=(max+min)/2; while(true){ if(target>arr[mid]){ min=mid+1; }else if(target<arr[mid]){ max=mid-1; }else{ return mid; } mid=(max+min)/2; if(min>max){ return -1; } } }}
3.统计大串中小串出现的次数
举例:在字符串” woaijavawozhenaijavawozhendeaijavawozhendehenaijavaxinbuxinwoaijavagun”中java出现了5次
public class Demo3 { public static void main(String[] args) { String str="woaijavawozhenaijavawozhendeaijavawozhendehenaijavaxinbuxinwoaijavagun"; System.out.println("java出现了"+getNum(str,"java")+"次"); } public static int getNum(String str,String target){ int num=0; for(int i=0;i<str.length()-3;i++){ String str2=str.substring(i, i+4); if("java".equals(str2)){ num++; } } return num; }}
阅读全文
0 0
- 【JAVA_SE】作业练习1029
- 【JAVA_SE】作业练习1016
- 【JAVA_SE】作业练习1021
- 【JAVA_SE】作业练习1022
- 【Java_SE】作业练习1104
- 【Java_SE】作业练习1105
- 【JAVA_SE】10.1作业
- JAVA_SE基础——25.面向对象练习
- JAVA_SE基础——33.this关键字的练习
- JAVA_SE基础——44.抽象类的练习
- 内存管理作业练习
- 内存管理作业练习
- 内存管理作业练习
- 内存管理作业练习
- 内存管理作业练习
- 内存管理作业练习
- 内存管理作业练习
- 第二次作业编码练习
- 使用GML Calibration Toolbox获得kinect内外参
- C#封装发送邮件SendMail函数
- Unit3
- 也谈JAVA,J2EE中的国际化问题
- 挂饰 BZOJ
- 【JAVA_SE】作业练习1029
- M
- 洛谷 2330 繁忙的都市 最小生成树 解题报告
- 网页漂浮代码
- 线程池详解
- 第八周项目4稀疏矩阵的三元组表示的实现及应用(1)
- 如何将本地图片嵌入网页?
- linux中的软件管理
- KMP初试