zoukankan      html  css  js  c++  java
  • 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就是把数组的排序颠倒过来,也叫反转。

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

    复制代码
     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 }
    复制代码

    运行结果:

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


    总结:1.数组的创建;

       2.数组的长度;

       3.冒泡排序;

       4.Array类的两个方法;

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

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

  • 相关阅读:
    适合高要求应用的高性能MEMS IMU解决方案
    apt-get本地软件源搭建
    DNS与ARP协议
    vue computed
    常见宏任务与微任务
    Promise.resolve解析
    为什么var可以重复声明
    symbol
    引用类型转换为原始值(基本类型)
    ==运算符
  • 原文地址:https://www.cnblogs.com/China3S/p/3496119.html
Copyright © 2011-2022 走看看