C#实现排序的代码详解

C#排序案例代码

using System;

namespace 排序案例
{
  class Program
  {
    static void Main(string[] args)
    {
      //定义随机数列
      int a, b, c, d;
      Random rand = new Random();
      int[] intArray = new int[10];
      for (int i = 0; i < intArray.Length; i++)
      {
        a = rand.Next(1, 100);
        intArray[i] = a;
      }
      foreach (int item in intArray)
      {
        Console.Write("{0}\t", item);
      }
      Console.WriteLine("\n");

      //直接使用已存在的方法对数列进行升序排序
      Array.Sort(intArray);
      foreach (int item in intArray)
      {
        Console.Write("{0}\t", item);
      }
      Console.WriteLine("\n");
      //使用冒泡排序法手动对数列进行倒序排序
      for (int a1 = 0; a1 < intArray.Length; a1++)
      {
        for (int a2 = a1 + 1; a2 < intArray.Length; a2++)
        {
          if (intArray[a1] < intArray[a2])
          {
            int temp = intArray[a1];
            intArray[a1] = intArray[a2];
            intArray[a2] = temp;
          }
        }
      }
      foreach (int item in intArray)
      {
        Console.Write("{0}\t", item);
      }
      Console.WriteLine("\n");
      //直接使用已存在的方法对数列进行反向排序(倒转数据元素)
      Array.Reverse(intArray);
      foreach (int item in intArray)
      {
        Console.Write("{0}\t", item);
      }
      Console.WriteLine("\n");

    }
  }
}

运行后的结果:

以上就是本次介绍的全部知识点,感谢大家的学习和对我们的支持。

(0)

相关推荐

  • c#实现最简洁的快速排序(你绝对可以看懂)

    前言 算法对于程序员的重要性不言而喻,今天我和大家分享算法中的一个基础算法,快速排序.作为一名程序员,相信大家都不陌生,但是要大家徒手一次性写出来,我估计还是有难度的.那么废话不多少,我先简单减少一下概念. 快速排序算法说明: 原始数组L1,从中任意选择一个基准数F(一般选择第1个),小于F的数据放在F的左边记为数组minList,大于F的数据放在F的右边记为数组maxList.那么 L1=minList+F+maxList 然后对minList和maxList再做这样的操作,直到minList

  • C# ListView 点击表头对数据进行排序功能的实现代码

    添加表头单击事件 private void listView1_ColumnClick(object sender, ColumnClickEventArgs e) { if (listView1.Columns[e.Column].Tag == null) { listView1.Columns[e.Column].Tag = true; } bool tabK = (bool)listView1.Columns[e.Column].Tag; if (tabK) { listView1.Col

  • C#实现的二维数组排序算法示例

    本文实例讲述了C#实现的二维数组排序算法.分享给大家供大家参考,具体如下: class Order { /// <summary> /// 对二维数组排序 /// </summary> /// <param name="values">排序的二维数组</param> /// <param name="orderColumnsIndexs">排序根据的列的索引号数组</param> /// <

  • C#代码实现扑克牌排序的几种方式

    扑克牌游戏,总是能用到很多的手牌排序,总结了几种方式供参考,顺便记录一下方便以后使用. 我做的这个是由(1-13:黑桃A-K || 14 - 26:红桃 || 27 - 39:梅花 || 39 - 52 : 方片 || 53.54:小王.大王)表示的一副扑克牌,这样对数组除以13等于扑克花色(如:25/13 = 2 是红桃),对数组值取模等于扑克点数(如:25%13 = 12 是Q),这样25就表示了红桃Q的扑克牌. 当处理特殊规则的时候单独写一个List,在组拼就可以了. 比如说:赖子斗地主的

  • C#实现二叉排序树代码实例

    二叉排序树,又称为二叉查找树.它或者是一颗空树,或者是具有下列性质的二叉树: 若它的左子树不为空.则左子树上所有的结点的值均小于跟的结点值 若它的右子树部位空,则右子树的所有结点值均大于它的根结点的值 它的左右子树也分别是二叉排序树 1,排序方便 2,查找方便 3,便于插入和删除 C#链式存储二叉排序树,实现简单的排序,以及查找,具体代码如下: namespace _2_1_3二叉排序树 { /// <summary> /// 结点类 /// </summary> class BS

  • JavaScript实现各种排序的代码详解

    冒泡排序 function Bubble(arr){ var temp; for(var i=0;i<arr.length-1;i++){ for(var j=i+1;j<arr.length;j++){ if(arr[i]>arr[j]){ temp=arr[i]; arr[i]=arr[j]; arr[j]=temp; } } } return arr; } console.log(Bubble([2,5,1,0,6,2])) //[0,1,2,2,5,6] 选择排序 functio

  • C#实现排序的代码详解

    C#排序案例代码: using System; namespace 排序案例 { class Program { static void Main(string[] args) { //定义随机数列 int a, b, c, d; Random rand = new Random(); int[] intArray = new int[10]; for (int i = 0; i < intArray.Length; i++) { a = rand.Next(1, 100); intArray[

  • java数组算法例题代码详解(冒泡排序,选择排序,找最大值、最小值,添加、删除元素等)

    数组算法例题 1.数组逆序 第一个和最后一个互换,第二个和倒数第二个互换,就相当于把数组想下图一样,进行对折互换,如果数组个数为奇数,则中间保持不变其余元素互换即可 import java.util.Arrays; class Demo12 { public static void main (String[] args) { int[] arr = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9}; System.out.println(Arrays.toString(arr));

  • Java map存放数组并取出值代码详解

    获取map的值主要有四种方法,这四种方法又分为两类,一类是调用map.keySet()方法来获取key和value的值,另一类则是通过map.entrySet()方法来取值,两者的区别在于,前者主要是先获取到所有的key的集合,当你需要查询value的值的时候需要通过key来查询value,后者则直接将key和value的键值对直接取出来,只用查询一次,对于那种性能更好,我觉得还是用map.entrySet()更好一点,具体请参见map.keySet()和map.EntrySet()的比较,接下

  • BootStrap实现树形目录组件代码详解

    需求描述 产品添加页面,需要选择车型.在bootStrap的modal上弹出子modal来使用. 车型一共有4级目录.要使用目录树. 然后分活动和商品两种,需要能够通过不通参数来调用该组件. 车型品牌要使用字母导航. 技术实现 数据都是后端传json过来,我们ajax获取然后操作. 由于车型总数据有几万条以上,不可能一次性请求过来.这里我们使用异步的方式,每点击一次目录节点,加载它的下一级. 这里我们用两个参数来控制活动和商品的不同加载._showPrice和opened 后端传过来的第一级数据

  • java 中基本算法之希尔排序的实例详解

    java 中基本算法之希尔排序的实例详解 希尔排序(Shell Sort)是插入排序的一种.也称缩小增量排序,是直接插入排序算法的一种更高效的改进版本.希尔排序是非稳定排序算法.该方法因DL.Shell于1959年提出而得名. 希尔排序是把记录按下标的一定增量分组,对每组使用直接插入排序算法排序:随着增量逐渐减少,每组包含的关键词越来越多,当增量减至1时,整个文件恰被分成一组,算法便终止. 基本思想:算法先将要排序的一组数按某个增量d(n/2,n为要排序数的个数)分成若干组,每组中记录的下标相差

  • Java编程实现快速排序及优化代码详解

    普通快速排序 找一个基准值base,然后一趟排序后让base左边的数都小于base,base右边的数都大于等于base.再分为两个子数组的排序.如此递归下去. public class QuickSort { public static <T extends Comparable<? super T>> void sort(T[] arr) { sort(arr, 0, arr.length - 1); } public static <T extends Comparabl

  • java中的arrays.sort()代码详解

    Arrays.sort(T[], Comparator < ? super T > c) 方法用于对象数组按用户自定义规则排序. 官方Java文档只是简要描述此方法的作用,并未进行详细的介绍,本文将深入解析此方法. 1. 简单示例 sort方法的使用非常的简单明了,下面的例子中,先定义一个比较Dog大小的Comparator,然后将其实例对象作为参数传给sort方法,通过此示例,你应该能够快速掌握Arrays.sort()的使用方法. import java.util.Arrays; impo

  • python操作列表的函数使用代码详解

    python的列表很重要,学习到后面你会发现使用的地方真的太多了.最近在写一些小项目时经常用到列表,有时其中的方法还会忘哎! 所以为了复习写下了这篇博客,大家也可以来学习一下,应该比较全面和详细了 列表(list): 用来存放相同或者不同元素(字符)用逗号隔开的一个存储方式. list我个人认为最重要的有一点大家可能都容易忽略那就是复制列表,这点文章最后来讲解 定义三个列表的样例 lis = [1, 2, 3, 4, 5, 6] lis = ['a', 'b', 'c', 'd'] lis =

  • Python实现霍夫圆和椭圆变换代码详解

    在极坐标中,圆的表示方式为: x=x0+rcosθ y=y0+rsinθ 圆心为(x0,y0),r为半径,θ为旋转度数,值范围为0-359 如果给定圆心点和半径,则其它点是否在圆上,我们就能检测出来了.在图像中,我们将每个非0像素点作为圆心点,以一定的半径进行检测,如果有一个点在圆上,我们就对这个圆心累加一次.如果检测到一个圆,那么这个圆心点就累加到最大,成为峰值.因此,在检测结果中,一个峰值点,就对应一个圆心点. 霍夫圆检测的函数: skimage.transform.hough_circle

随机推荐