アルゴリズムの説明:特定の配列について、最初に最初のレコードが順序付きシーケンスを形成し、残りは順序付けられていないシーケンスであると仮定します。次に、2番目のレコードから始めて、現在処理されたレコードは、最後のレコードが順序付けられたシーケンスに挿入されるまで、レコードのサイズに応じて以前の順序付けされたシーケンスに挿入されます。
直接挿入ソートJava実装チュートリアル
例1
public class insert {public static void main(string [] args){int a [] = {9,3,28,6,34,7,10,10,1,5,8}; show(a); for(int i = 1; i insertone(a、i);} show(a);} static void show(int a []){for(int i = 0; i system.out.print(a [i]+"");} println();} // int int kth element int int intic void intermed interme(int in int intic) i = 0; i <= k; i ++){if(a [i]> = a [k]){int temp = a [k]; // a [k]を中間変数に移動する前に// k位置の前の数値から後方に移動します。 [i]への中間変数、および移動後の値は空です。例2
パッケージソート;/***ソート*平均O(n^2)、best o(n)、最悪のo(n^2);空間の複雑さo(1);安定した; simple * @author zeng * */public class insertionsort {public static void insertionsort(int [] a){int i = 1; i <a.length; i ++){for(int j = i; j> 0; j-){if(a [j] <a [j -1]; tmp;}}}} public static void main(string [] args){int [] a = {49、38、65、97、76、13、27、50}; insertionsort(a); for(int i:a)system.out.print(i + "");}}}}要約します
上記は、直接挿入ソートコードの例のJavaプログラミングの実装に関するすべてです。私はそれが誰にでも役立つことを願っています。興味のある友人は、このサイトの他の関連トピックを引き続き参照できます。欠点がある場合は、それを指摘するためにメッセージを残してください。このサイトへのご支援をありがとうございました!