代码来自闵老师”日撸 Java 三百行(41-50天)“,链接:https://blog.csdn.net/minfanphd/article/details/116975863
public void insertionSort() {
DataNode tempNode;
int j;
for (int i = 2; i < data.length; i++) {
tempNode = data [i];
for (j = i - 1; data[j].key > tempNode.key; j--) {
data[j + 1] = data[j];
}//of for j
data[j + 1] = tempNode;
}//of for i
}//of insertionSort
/**
* ********************************************************
* Test the method.
* ********************************************************
*/
public static void insertionSortTest() {
int[] tempUnsortedKeys = { -100, 5, 3, 6, 10, 7, 1, 9 };
String[] tempContents = { "null", "if", "then", "else", "switch", "case", "for", "while" };
DataArray tempDataArray = new DataArray(tempUnsortedKeys, tempContents);
System.out.println(tempDataArray);
tempDataArray.insertionSort();
System.out.println("Result\r\n" + tempDataArray);
}//of insertionSortTest