美文网首页
C#排序方法

C#排序方法

作者: 胤醚貔貅 | 来源:发表于2017-04-25 19:54 被阅读21次

冒泡排序法

for(int i=0;inums[j+1])

{

int temp = nums[j];

nums[j] = nums[j+1];

nums[j+1] = temp;

}

}

}

选择排序法

void Sort(int[ ]a) {

int min;//用来存储比较后的元素的最小值

int minindex;//用来记录最小值的下标

for (int i = 0; i < a.Length - 1; i++) {

min = a[i];

minindex = i;

for (int j = i + 1; j < a.Length; j++) {

if (a[j] < min) {

//记录最小值和其所对应的下标

min = a[j];

minindex = j;

}

}

//交换值

a[minindex] = a[i];

a[i] = min;

}

}

相同点:

1.都要通过n-1组排出具有n个数的顺序;

2.都是通过逐个相比,比出最值的;

不同点:

1.冒泡法,顾名思义就是把小的泡冒到上面,大的泡沉到下面,最值在中间和其他的值交换;

而选择法,是假定了一个最值,所以最值和其他的值的交换就发生在假定最值的地方;

二分查找

while (low <= high) {

//mid代表中间索引,不能放到while循环的外面

int mid = (low + high) / 2; if (a[mid] == key) {

Console.WriteLine("find key,index=" + mid); return mid;

}

//如果中间的数大于要查找的数,把后面一半数组去掉

else if (a[mid] > key)

{

high = mid - 1;

}

else  //小于要查找的数,把前面一半的值去掉{

low = mid + 1;

}

}

相关文章

  • C#排序方法

    冒泡排序法 for(int i=0;inums[j+1]) { int temp = nums[j]; nums[...

  • 排序算法

    十大经典排序算法Lua版八大排序算法C++/C#

  • 简单排序之冒泡排序

    冒泡排序 code by c# static void main(string[] args){ int[] ar...

  • C# 数组的几种排序方法

    1.直接插入排序法 for (int i = 0; i < arr.Length; i++) { int tem...

  • Unity WebGL与jslib相互调用的注意事项

    方法1:将C#方法传给js,js调用方法回调返回的方式 C# 参考链接:WebGL throwing abort(...

  • 8、List

    C# List排序总结[https://zhuanlan.zhihu.com/p/61869401] 一、常用方式...

  • 数组排序方法

    数组排序方法介绍 (注意:排序后返回值是不可变数组类型) //排序方法1 (块排序) //排序方法2. //排序...

  • C#匿名函数

    在 2.0 之前的 C# 版本中,声明委托的唯一方式是使用命名方法。 C# 2.0 引入匿名方法,在 C# 3.0...

  • unity3d c#调用java

    c#调用java非静态方法 C#调用静态类,静态方法 ; CustomClass的静态类,SetData是它的静...

  • C# 实现经典排序算法

    C# 实现经典排序算法 using ElementType = System.Int32; // 顶部添加此行,为...

网友评论

      本文标题:C#排序方法

      本文链接:https://www.haomeiwen.com/subject/dzqbzttx.html