-
2017-02-09 15:56:24
-
2017-02-09 16:10:30
- C#希尔排序
- 希尔排序是对直接插入排序算法的改进,其主要思想是:先将整个排序数列分割成为若干个子序列,在子序列分别进行直接插入排序,待整个数列基本有序时再对全部进行一次直接插入排序。以此来形成新的有序数列。一般分割方法是两个元素相距d=n/2,n/4,n/8……以此类推。
-
2123
-
2017-02-09 16:14:11
- C# 选择排序
- 本文描述了C# 选择排序的详情,有需要可以参考下
-
1510
-
2017-02-09 16:15:19
- C# 快速排序
- 设要排序的数组是A[0]……A[N-1],首先任意选取一个数据(通常选用数组的第一个数)作为关键数据,然后将所有比它小的数都放到它前面,所有比它大的数都放到它后面,这个过程称为一趟快速排序。值得注意的是,快速排序不是一种稳定的排序算法,也就是说,多个相同的值的相对位置也许会在算法结束时产生变动。
-
2231
-
2017-02-09 16:17:20
- C# 归并排序
- 归并(Merge)排序法是将两个(或两个以上)有序表合并成一个新的有序表,即把待排序序列分为若干个子序列,每个子序列是有序的。然后再把有序子序列合并为整体有序序列。该算法是采用分治法(Divide and Conquer)的一个非常典型的应用。
-
1544
-
2017-02-09 16:19:31
- C# 插入排序
- 在最坏情况下,数组完全逆序,插入第2个元素时要考察前1个元素,插入第3个元素时,要考虑前2个元素,……,插入第N个元素,要考虑前 N - 1 个元素。因此,最坏情况下的比较次数是 1 + 2 + 3 + ... + (N - 1),等差数列求和,结果为 N^2 / 2,所以最坏情况下的复杂度为 O(N^2)。
-
1683
-
2017-02-09 16:20:37
- C# 堆排序
- 利用大顶堆(小顶堆)堆顶记录的是最大关键字(最小关键字)这一特性,使得每次从无序中选择最大记录(最小记录)变得简单。
-
1353
-
2017-02-09 16:22:07
- 鸡尾酒排序(双冒泡排序、搅拌排序或涟漪排序)
- 鸡尾酒排序等于是冒泡排序的轻微变形。不同的地方在于从低到高然后从高到低,而冒泡排序则仅从低到高去比较序列里的每个元素。他可以得到比冒泡排序稍微好一点的效能,原因是冒泡排序只从一个方向进行比对(由低到高),每次循环只移动一个项目。
-
2771
-
2017-02-09 16:24:05
- C# 冒泡排序
- 本文描述了 C# 冒泡排序的详情,有需要可以参考下
-
1512
-
2017-02-09 16:25:37