1 / 22
文档名称:

四种简单的排序算法C++.docx

格式:docx   大小:37KB   页数:22页
下载后只包含 1 个 DOCX 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

四种简单的排序算法C++.docx

上传人:文档百货 2022/4/27 文件大小:37 KB

下载得到文件列表

四种简单的排序算法C++.docx

文档介绍

文档介绍:
四种简单的排序算法C++
四种简洁的排序算法
我觉得假如想成为一名优秀的开发者,不仅要踊跃学****时下流行的新技术,比方WCF、 MVC、AJAX等,娴熟应用一些已经比拟成熟的技术,比方、WinF{
// 插入排序
public static void InsertSort<T, C>(T[] array, C comparer) where C:IComparer<T>
{
for (int i = 1; i <= - 1; i++) {
//({0}: , i);
int j = i;










while (j>=1 pare(array[j], array[j - 1]) < 0) {
swap(ref array[j], ref array[j-1]);
j--;
}
//();
//(array);
}
}

// 交换数组array中第i个元素和第j个元素
private static void swap<T>(ref T x,ref T y) {
// ({0}<-->{1} , x, y);
T temp = x;
x = y;
y = temp;
}
}
()()方法仅仅是出于测试便利,PrintArray()方法依次打印了数组的内容。swap<T>()方法那么用于交换数组中的两条记录,
也对交换数进展了打印〔这里我注释掉了,但在测试时可以取消对它们的注释〕。外层for循环限制变量i表示当前处理第i条记录。 public class AlgorithmHelper {










// 打印数组内容
public static void PrintArray<T>(T[] array) {
( Array:);
foreach (T item in array) {
( {0}, item);
}
();
}
}

// 获得Comparer,进展比拟
public class ComparerFactory {
public static IComparer<int> GetIntComparer() {
return new IntComparer();
}

public class IntComparer : IComparer<int> {
public int Compare(int x, int y) {
return pareTo(y);
}
}










}
上面这段代码我们创立了一个ComparerFactory类,它用于获得一个IntComparer对象,这个对象实现了IComparer<T>接口,规定了两个int类型的关键码之间比拟大小的规那么。假如你有自定义的类型,比方叫MyType,只须要在ComparerFactory中再添加一个类,比方叫MyTypeComparer,然后让这个类也实现IComparer<T>接口,最终再添加一个方法返回MyTypeCompare