索引冒泡排序
// int array[] = {3, 5, 1, 6, 8, 2, 4, 9, 7};
int brray[] = {0, 1, 2, 3, 4, 5, 6, 7, 8};
// int count = sizeof(array) / sizeof(array[0]);
// int flag = 0; // 有序标志位 0无序 1有序
// for ( int i = 0; flag == 0 && i < count - 1; i++) {
// flag = 1; // 假定有序
// for (int j = 0; j < count - i - 1; j++) {
// if (array[brray[j]] > array[brray[j + 1]]) {
// int temp = brray[j];
// brray[j] = brray[j + 1];
// brray[j + 1] = temp;
// flag = 0; // 确定无序
// }
// }
// }
for (int i = 0; i < count; i++) {
// printf("%d\n", array[brray[i]]);
// }
索引插入排序
// int array[] = {3, 5, 1, 6, 8, 2, 4, 9, 7};
int brray[] = {0, 1, 2, 3, 4, 5, 6, 7, 8};
// int count = sizeof(array) / sizeof(array[0]);
// for (int i = 1; i < count; i++) {
// int j = i;
// int temp = brray[j];
// while (j > 0 && array[brray[j - 1]] > array[temp]) {
// array[brray[j]] = array[brray[j - 1]];
// j--;
// }
// array[brray[j]] =array[ temp];
// }
// for (int i = 0; i < count; i++) {
// printf ("%d\n", array[brray[i]]);
// }
索引选择排序
// int array[] = {3, 5, 1, 6, 8, 2, 4, 9, 7};
int brray[] = {0, 1, 2, 3, 4, 5, 6, 7, 8};
// int count = sizeof(array) / sizeof(array[0]);
// for (int j = 0; j < count - 1; j++) {
// int minIndex = j;
// for (int i = minIndex + 1; i < count; i++) {
// if (array[brray[minIndex]] > array[brray[i]]) {
// minIndex = i;
// }
// }
// if (minIndex != j) {
// int temp = 0;
// temp = brray[minIndex];
// brray[minIndex] = brray[j];
// brray[j] = temp;
// }
// }