排序—直接插入排序

时间:2021-03-24 11:10:01

本文借鉴与  一线码农 的博客。

排序—直接插入排序

package com.ufida.practice.suanfa.sort;

import java.util.ArrayList;
import java.util.List;
import java.util.Random;

public class InsertSort {

    /**
     * @param args
     */
    public static void main(String[] args) {
        // TODO Auto-generated method stub
         List<Integer> list = new ArrayList<Integer>();
         for (int i = 0; i < 10; i++)
                list.add(new Random().nextInt(200));
         InsertSort(list);
         for (int j = 0; j < list.size(); j++)
                System.out.println(list.get(j));
    }

     public static void InsertSort(List<Integer> list)
     {
         //无须序列
         for (int i = 1; i < list.size(); i++)
         {
             int temp = list.get(i);
             int j;
             //有序序列
             for (j = i - 1; j >= 0 && temp < list.get(j); j--)
                 list.set(j+1, list.get(j));            
             list.set(j+1, temp);
         }
     }

}