C# Generics 进行直接插入排序
class MySort<T>
{
public void InsertSort(T []a)
{
T t;
int j;
for (int i = 1; i < a.Length; i++)
{
t = a[i];
for (j = i; j > 0 && a[j - 1] > t; j--)
a[j] = a[j - 1];
a[j] = t;
}
}
}
a[j-1]>t编译说运算符>无法运用于“T”,请问该如何解决
[解决办法]
class MySort<T> where T : IComparable //<--- { public void InsertSort(T[] a) { T t; int j; for (int i = 1; i < a.Length; i++) { t = a[i]; for (j = i; j > 0 && a[j - 1].CompareTo(t) > 0; j--) //<--- a[j] = a[j - 1]; a[j] = t; } } }