集册 Java实例教程 实现插入排序

实现插入排序

欢马劈雪     最近更新时间:2020-01-02 10:19:05

442
提示:您可在线编辑运行本教程的实例 - 运行实例,去试试!
实现插入排序


class Insertion {// from n  o  w  j  a  v  a . c o m


  public static void sort(Comparable[] a) {

    int N = a.length;

    for (int i = 0; i < N; i++) {

      for (int j = i; j > 0; j--) {

        if (less(a[j], a[j - 1]))

          exch(a, j, j - 1);

        else

          break;

      }

    }

  }


  private static boolean less(Comparable v, Comparable w) {

    return v.compareTo(w) < 0;//N o w J a v a . c o m 提 供

  }


  private static void exch(Comparable[] a, int i, int j) {

    Comparable swap = a[i];

    a[i] = a[j];

    a[j] = swap;

  }


  public static void main(String[] args) {

    Integer[] data = new Integer[] { 5, 1, 3, 7, 4, 8, 1, 38, 10, 9, 8, 44 };

  
展开阅读全文