排序 - 图1

直接插入排序

排序算法思想:
每次将待排序的记录按其关键字大小插入前面已经排序好的子序列中, 直到全部记录插入完成

  1. void insertSort(int A[]) {
  2. int i,j,temp;
  3. for (i = 1;i <= A.length;i++) { // 将各元素插入已排好序的序列中
  4. if (A[i] < A[i-1]) { // 若A[i]关键字小于前驱
  5. temp = A[i]; // 用temp暂存A[i]
  6. for (j = i - 1;A[0] < A[j];--j) { // 检查所有签名已排好序的元素
  7. A[j+1] = A[j]; // 所有大于temp的元素都向后挪位
  8. }
  9. A[j+1] = A[0]; // 复制到插入位置
  10. }
  11. }
  12. }

选择排序