码迷,mamicode.com
首页 > 编程语言 > 详细

数组--插入排序法

时间:2015-12-06 16:04:28      阅读:140      评论:0      收藏:0      [点我收藏+]

标签:

1、什么是插入排序:

  将待排序数列分为两部分:有序数据和待插入元素。

  插入排序的基本操作是将一个待插入数据插入到一组有序数据中,把将要插入的数与各数据进行比较,当找到第一个比插入数大的元素时,该元素之前为插入位置。

 1 namespace ConsoleApplication1
 2 {
 3     class Program
 4     {
 5         static void bubble_sort(int[] unsorted)
 6          {
 7             //这一层for循环,决定接收变量(最后一个可不参加)
 8              for (int i = 1; i < unsorted.Length; i++)
 9              {
10                  int insert=unsorted[i];//声明一个保存插入值的变量
11                  int j=0;//声明一个记录下标的变量(可以得到向后移一位的起点下标元素)
12                  while (j < i && insert > unsorted[j])
13                  {
14                      j++;
15                  }
16                  //用for循环进行后移操作
17                  for (; j < i; i--)
18                  { 
19                     unsorted[i]=unsorted[i-1];
20                  }
21                  //进行插入交换
22                  unsorted[j] = insert;
23              }
24          }
25  
26          static void Main(string[] args)
27          {
28              int[] x = { 6, 2, 4, 1, 5, 9,3,7 };//声明一个整型数组,并赋值
29              //排序前数组
30              Console.Write("排序前:");
31              foreach (var item in x)
32              {
33                  Console.Write(item+" ");
34               }
35              bubble_sort(x);//调用冒泡排序方法
36              //排序后数组
37              Console.Write("\n排序后:");
38              foreach (var item in x)
39              {
40                  Console.Write(item+" ");
41              }
42              Console.ReadLine();
43          }
44     }
45 }

 

数组--插入排序法

标签:

原文地址:http://www.cnblogs.com/pengyouqiang88/p/5023663.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!