else {
isSort = false;
2. 选择排序每次选出最值 , 再交换到边上;
public void selectSort(int[
nums){ for (int i = 0; i < nums.length-1; i++) { int index = i; int minNum = nums[i
; for (int j = i+1; j < nums.length; j++) { if(nums[j
< minNum){
minNum = nums[j
; index = j;
if(index != i){
nums[index
= nums[i
;
nums[i
= minNum;
3. 插入排序对循环的每个数找到属于自己的位置插入;
public void insertionSort(int[
nums){ for (int i = 1; i < nums.length; i++) { int j = i; int insertNum = nums[i
; while(j-1 >= 0 && nums[j-1
> insertNum){
nums[j
= nums[j-1
;
j--;
nums[j
= insertNum;
4. 快速排序选一个基本值 , 小于它的放一边 , 大于它的放另一边;
public void quickSortDfs(int[
nums int left int right){ if(left > right){ return;
int l = left;
int r = right;
int baseNum = nums[left
; while(l < r){ //必须右边先走
while(nums[r
>= baseNum && l < r){
r--;
while(nums[l
<= baseNum && l < r){
l++;
int temp = nums[l
;
nums[l
= nums[r
;
nums[r
= temp;
nums[left
= nums[l
;
nums[l
= baseNum;
quickSortDfs(nums left r-1);
quickSortDfs(nums l+1 right);
5. 归并排序分治算法;
//归public void mergeSortDfs(int[
nums int l int r){ if(l >= r){ return;
int m = (l+r)/2;
mergeSortDfs(nums l m);
mergeSortDfs(nums m+1 r);
merge(nums l m r);
//并private void merge(int[
nums int left int mid int right){ int[
temp = new int[right-left+1
; int l = left; int m = mid+1; int i = 0; while(l <= mid && m <= right){ if(nums[l
< nums[m
){
temp[i++
= nums[l++
;
else {
temp[i++
= nums[m++
;
while(l <= mid){
temp[i++
= nums[l++
;
while(m <= right){
temp[i++
= nums[m++
;
System.arraycopy(temp 0 nums left temp.length);
6. 希尔排序引入步长减少数字交换次数提高效率;
6.1 希尔-冒泡排序(慢)public void shellBubbleSort(int[
nums){ for (int step = nums.length/2; step > 0 ; step /= 2) { for (int i = step; i < nums.length; i++) { for (int j = i-step; j >= 0; j -= step) { if(nums[j
- 华为|华为再得一个强援,不再孤军奋战,任正非说的果然没错
- javascript|ReactJS开发人员要具备哪些突出技能?
- 华为鸿蒙系统|鸿蒙OS再次更新:围绕超级终端继续优化,并首先适配新机型!
- 显卡|5000mAh+双模5G,仅售944元,买得起用得爽的华为手机
- 日前|2021年全球折叠屏旗舰谁卖的最好?三星一骑绝尘 华为第二
- 三星|中国已有一家类三星的企业,做得比华为更广泛
- 华为|4088元起!华为P50E明日首销:没麒麟、没5G
- 手机芯片性能洗牌:华为不敌联发科、三星,麒麟9000已经跌出前五
- 华为鸿蒙系统|联名华为,车企的流量密码还能管用多久?
- 华为Mate X3折叠屏正式入网,仅支持4G,价格或进一步调低