插入排序演算法的JAVA實現

2021-04-01 21:30:18 字數 1447 閱讀 1808

package utils.sort;

/***

插入排序,要求待排序的陣列必須實現

comparable

介面*/

public class insertsort implements sortstrategy/**

對陣列中的第

i個元素,認為它前面的

i - 1

個已經排序好,然後將它插入到前面的

i - 1

個元素中

*/int size = 1;

while (size < obj.length)

}/**

*在已經排序好的陣列中插入乙個元素,使插入後的陣列仍然有序

*@param obj

已經排序好的陣列

*@param size

已經排序好的陣列的大小

*@param c

待插入的元素

*/private void insert(comparable obj, int size, comparable c)

obj[i] = c;

break;}}

}}

其餘的幾個類的鏈結分別是:

插入排序:http://blog.csdn.net/linyco/archive/2005/10/10/498735.aspx

氣泡排序:http://blog.csdn.net/linyco/archive/2005/10/10/498736.aspx

選擇排序:http://blog.csdn.net/linyco/archive/2005/10/10/498742.aspx

歸併排序:http://blog.csdn.net/linyco/archive/2005/10/10/498746.aspx

希爾排序:http://blog.csdn.net/linyco/archive/2005/10/10/498764.aspx

快速排序:http://blog.csdn.net/linyco/archive/2005/10/10/498759.aspx

插入排序:http://blog.csdn.net/linyco/archive/2005/10/10/498735.aspx

氣泡排序:http://blog.csdn.net/linyco/archive/2005/10/10/498736.aspx

選擇排序:http://blog.csdn.net/linyco/archive/2005/10/10/498742.aspx

歸併排序:http://blog.csdn.net/linyco/archive/2005/10/10/498746.aspx

希爾排序:http://blog.csdn.net/linyco/archive/2005/10/10/498764.aspx

快速排序:http://blog.csdn.net/linyco/archive/2005/10/10/498759.aspx

Java實現插入排序演算法

插入排序適用於有初步排序的序列。對於乙個n元素的序列而言,最好的情況是序列已經是公升序排列的了,只需要比較n 1次 最壞的情況是初始序列逆序,那麼將進行n n 1 2次比較,即插入排序演算法複雜度最好為 o n 最差跟平均為 o n 2 以字串的形式讀入乙個整數序列,轉換後以插入排序實現公升序排列 ...

java實現插入排序演算法

主要思想就是從第二個元素開始,依次和前面的元素比較,如果比前面的元素小則將元素依次向後移位,給需要插入的元素騰出空間。與選擇排序類似的是當前索引左邊的所有元素都是有序的,但是它們最終的位置不確定,因為後面可能還會出現更小或更大的元素。所以為了給更小或更大的元素騰出空間,它們隨時都可能被移動。如果到達...

插入排序演算法Java實現

插入排序的思想是迴圈陣列中每乙個元素,然後將這些元素依次插入到乙個有序的數列中去,實現陣列的排序,也就是說迴圈到的當前元素索引的左側都是已經排好序的,針對當前元素,將它依次與相鄰的左側元素比較,小於左側就兩個交換,迴圈比較和交換的過程,直至元素大於左側相鄰元素,或者是該元素已被交換至最左側。實現如下...