java基础题..docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
1.完成数组int[] a = {100,40, 60, 87, 34, 11, 56, 0}的快速排序、冒泡排序; 快速排序 实现代码: public class Test001 { public static void main(String[] args) { int[] a = newint[]{100,40, 60, 87, 34, 11, 56, 0}; System.out.println(未排序之前的数据是:); print(a); System.out.println(排序之后的数据是:); sort(a,0,a.length-1); print(a); } //打印方法 public static void print(int[] b){ for(int i=0; ib.length; i++){ System.out.print(b[i]+ ); } System.out.println(); } //排序方法 static void sort(int[] a,int low,int high){ if(low = high) return;//low小于high,则直接返回 if((high - low)==1){//如果只有两个数字,则直接比较 if(a[0] a[1]) swap(a,0,1); return; } int pivot = a[low];//取第一个数作为中间数 int left = low +1; int right = high; while(leftright){ //从左边开始找 while(left right left = high){//如果左小于右则一直循环 if(a[left] pivot)break; left++;//左下标往右边走一点 } //从右边开始找 while(left = right right low){//如果左大于右则一直循环 if(a[right] = pivot) break; right--;//右下标往左走一点 } if(left right)//如果还没有找完,则交换数字 swap(a,right,left); } swap(a,low,right); sort(a,low,right); sort(a,right+1,high); } //调位方法 private static void swap(int[] array,int i, int j){ int temp; temp = array[i]; array[i] = array[j]; array[j] = temp; } } 打印结果为: 未排序之前的数据是: 100 40 60 87 34 11 56 0 排序之后的数据是: 0 11 34 40 56 60 87 100 冒泡排序 实现代码: public class Test002 { public static void main(String[] args) { int[] arr = {100,40, 60, 87, 34, 11, 56, 0};//定义数组 System.out.println(未排序之前的数据是:); maopaoPrint(arr); System.out.println(); System.out.println(排序之后的数据是:); maopaoSort(arr); } //排序方法 public static void maopaoSort(int[] arrys){ //定义临时变量temp int temp = 0; //用j表示下标,遍历数组 for(int j=0; jarrys.length; j++){ //对于每一个数组元素,从0到还未排序的最大下标,总是把最大的数字放在后边 for(int k=0; karrys.length-j-1; k++){ if(arrys[k]arrys[k+1]){//判断当前数字与后面数字的大小 temp = arrys[k]; arrys[k] = arrys[k+1]; arrys[k+1] = temp; } } } maopaoPrint(arrys);//打印输出 } //打印方法 public static void maopaoPrint(int[] l){ for(int i=0; il.length; i++){ System.out.print(l[i]+ );//从小到大的输出 } } } 打印结果为: 未排序之前的数据是: 100 40 60 87 34 11 56 0 排序之后的数据是: 0 11 34 40 56 60 87 100 2.采用折半查找的算法,在数组中查询到某个数

文档评论(0)

tiangou + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档