C#数组的排序



对于数组的排序有好多种方法,上面这种是最常规的方法,当然在Array类中有两个方法就是专门来完成排序的,一会我们再来看这两方法,下面我们还是来看一下语法吧,只要搞懂语法了,就可以自己随便排序了。

冒泡排序语法:



for (int i = 0; i < 数组长度 - 1; i++) 
           {
                for (int j = 0; j < 数组长度 - i - 1; j++) 
               { 
                   if (数组名[j] < 数组名[j + 1]) 
                   { 
                       int empty = 数组名[j]; 
                       数组名[j] = 数组名[j + 1];
                       数组名[j + 1] = empty;  
                  }  
              }  
          }



 

上面这个语法是降序排序,如果想升序的话就把if(数组名[j]<数组名[j=1])里面的小于号“<”改成大于号“>”就可以了。

刚才我们说到了Array类中的两个排序的方法,下面我们就简单的介绍一下Array类中的这两个方法。

在Array中实现升序排列的方法是Array.Sort(数组名),比如:Array.Sort(change).当然了降序也有Array.Reverse(数组名),比如:Array.Reverse(change),这个Reverse就是把数组的排序颠倒过来,也叫反转。

下面我们就把这两个方法放到实例中看看效果:



unity打乱list顺序_冒泡排序



1 class Program
 2     {
 3         static void Main(string[] args)
 4         {
 5             int[] change = { 23, 11, 54, 33, 7 };
 6             int length = change.Length;//得到数组的长度
 7             int i;
 8             Console.WriteLine("Array排序前:");
 9             for (i = 0; i < length; i++)//循环输出排序前的值
10             {
11                 Console.WriteLine("{0}", change[i]);
12             }
13             //下面是Array.Sort升序排列
14             Array.Sort(change);
15             Console.WriteLine("Array.Sort排序后:");
16             for (i = 0; i < length; i++)
17             {
18                 Console.WriteLine("{0}", change[i]);//循环输出Array.Srot升序排列结果
19             }
20             //下面是Array.Reverse降序排列后
21             Array.Reverse(change);
22             Console.WriteLine("Array.Reverse排序后:");
23             for (i = 0; i < length; i++)
24             {
25                 Console.WriteLine("{0}", change[i]);//循环输出Array.Reverse降序排列结果
26             }
27             Console.ReadKey();
28         }
29     }



unity打乱list顺序_冒泡排序



运行结果:

unity打乱list顺序_数组_03

冒泡排序和Array类中的两个方法排序实现出来的效果是相同的,不过相比而言冒泡排序的通用性很强,而且使用范围也比较广,还是希望大家多采用冒泡排序。

总结:1.数组的创建;

   2.数组的长度;

   3.冒泡排序;

   4.Array类的两个方法;

以上就是本次的分享,可能内容比较少,但是只要把它都很好的掌握了,我觉得也是一种进步,知识在于积累嘛!对吧!Ok!The end!

此文是本人的个人观点,如有不完善或者不准确的地方,欢迎高手进行批评,老鸟进行指点。