java面試中的各種排序

2021-08-21 22:41:33 字數 969 閱讀 6707

插入排序

public static void main(string args) ;

insertsort(nums);

for(int tmp:nums)

} //穩定的排序

public static void insertsort(int nums);

shellsort(nums);

for(int tmp:nums)

} public static void shellsort(int nums);

selectsort(nums);

for(int tmp:nums)

} public static void selectsort(int nums);

nums=heapsort(nums);

for(int tmp:nums)

} public static int heapsort(int nums)

return nums;

} //建堆,基於當前的節點調整該節點的子樹的位置

//length為陣列的長度,不是長度減1!!!!!!!!!!!!!!!!!

//!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

public static void adjustdowntoupmax(int array,int k,int length)

if(temp<=array[i])else

}array[k] = temp; //被調整的結點的值放人最終位置

} //刪除堆頂元素

public int deletemax(int array)

//插入操作

public int insertdata(int array,int data)else

} array[k]=data;

return array;

}

java各種排序方法

package org.rut.util.algorithm.support import org.rut.util.algorithm.sortutil author treeroot since 2006 2 2 version 1.0 public class insertsort imple...

java各種排序方法

package org.rut.util.algorithm.support import org.rut.util.algorithm.sortutil author treeroot since 2006 2 2 version 1.0 public class insertsort imple...

Java各種排序演算法

排序測試類 排序演算法的分類如下 1.插入排序 直接插入排序 折半插入排序 希爾排序 2.交換排序 冒泡泡排序 快速排序 3.選擇排序 直接選擇排序 堆排序 4.歸併排序 5.基數排序。關於排序方法的選擇 1 若n較小 如n 50 可採用直接插入或直接選擇排序。當記錄規模較小時,直接插入排序較好 否...