温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

插入排序、快速排序

发布时间:2020-08-05 08:59:09 来源:网络 阅读:280 作者:shayang88 栏目:编程语言
 * 插入排序 * @param list * @return */ public int[] insertSort(int[] list) { //先默认下标为0的已经是有序的 for(int i = 1; i < list.length ; i++) { //准备插入的数据 int insertVal = list[i]; //待比较的下标 int insertIndex = i - 1; //如果满足条件,说明位置还没有找到 while(insertIndex >= 0 && insertVal < list[insertIndex]) { list[insertIndex+1] = list[insertIndex]; insertIndex--; } list[insertIndex+1] = insertVal; } return list; } /** * 快速排序 * @param list * @return */ public void quickSrot(int left, int right, int[] list) { int l = left; int r = right; int pivot = list[(int)(left + right) / 2]; int temp = 0; while(l < r) { while(list[l] < pivot) l++; while(list[r] > pivot) r--; if(l > r) break; temp = list[l]; list[l] = list[r]; list[r] = temp; } if(l == r) { l++; r--; } if(left < r) quickSrot(left, r , list); if(right > l) quickSrot(l, right, list); }
向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI