1 / 79
文档名称:

java数据结构与经典算法——高手必会.doc

格式:doc   大小:546KB   页数:79
下载后只包含 1 个 DOC 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

java数据结构与经典算法——高手必会.doc

上传人:dreamzhangning 2019/8/6 文件大小:546 KB

下载得到文件列表

java数据结构与经典算法——高手必会.doc

相关文档

文档介绍

文档介绍:大O表示法:粗略的量度方法即算法的速度是如何与数据项的个数相关的算法大O表示法表示的运行时间线性查找O(N)二分查找O(logN)无序数组的插入O(1)有序数组的插入O(N)无序数组的删除O(N)有序数组的删除O(N)O(1)是最优秀的,O(logN)良好,O(N)还可以,O(N2)稍差(在冒泡法中见到)lassJWzw{ //插入排序 publicvoidinsertArray(Integer[]in){ inttem=0; intnum=0; intupnum=0; for(inti=0;i<;i++){ for(intj=i-1;j>=0;j--){ num++; if(in[j+1]<in[j]){ tem=in[j+1]; in[j+1]=in[j]; in[j]=tem; upnum++; } else { break; } } } for(inti=0;i<;i++){ (in[i]); if(i<-1) { (","); } } (); ("插入排序循环次数:"+num); ("移动次数:"+upnum); ("\n\n\n"); } //选择排序 publicvoidchooseArray(Integer[]in){ inttem=0; intnum=0; intupnum=0; for(inti=0;i<;i++) { for(intj=i;j<-1;j++){ num++; if(in[j+1]<in[j]){ tem=in[j+1]; in[j+1]=in[j]; in[j]=tem; upnum++; } } } for(inti=0;i<;i++){ (in[i]); if(i<-1) { (","); } } (); ("选择排序循环次数:"+num); ("移动次数:"+upnum); ("\n\n\n"); } //冒泡排序 publicvoidefferArray(Integer[]in){ inttem=0; intnum=0; intupnum=0; for(inti=0;i<;i++){ for(intj=i;j<-1;j++) { num++; if(in[j+1]<in[i]){ tem=in[j+1]; in[j+1]=in[i]; in[i]=tem; upnum++; } } } for(inti=0;i<;i++){ (in[i]); if(i<-1) { (","); } } (); ("冒泡排序循环次数:"+num); ("移动次数:"+upnum); ("\n\n\n"); } //打印乘法口诀 publicvoidprintMulti(){ for(intj=1;j<10;j++){ for(inti=1;i<=j;i++){ (i+"*"+j+"="+j*i+"\t"); } ("\t\n"); } ("\n\n\n"); } //打印N*1+N*2+N*3=num的所有组合 publicvoidprintNumAssemble(intnum){ for(inti=0;i<num+1;i++){ for(intj=0;j<num/2+1;j++){ for(intin=0;in<num/3+1;in++){ if(i*1+j*2+in*3==num){ ("小马"+i+",\t中马"+j+",\t大马"+in); } } } } } /** ****@paramargs */ publicstaticvoidmain(String[]args){ JWzwjwzw=newJWzw(); intnum=3; ();//