美文网首页
C#中,实现插入排序,支持int和float

C#中,实现插入排序,支持int和float

作者: 全新的饭 | 来源:发表于2024-02-04 10:44 被阅读0次

    因为无法直接限制T是int或float,因此直接要求T实现IComparable。
    注意:无法使用比较运算符(>,<,>=,<=),只能使用CompareTo进行比较。

    • a.CompareTo(b)<0 等价于 a<b
    • a.CompareTo(b)=0 等价于 a=b
    • a.CompareTo(b)>0 等价于 a>b
    public T[] InsertionSort<T>(T[] array) where T : IComparable
        {
            T temp;
            for (int i = 1; i < array.Length; i++)
            {
                for (int j = i; j > 0; j--)
                {
                    if (array[j].CompareTo(array[j - 1]) < 0)
                    {
                        temp = array[j];
                        array[j] = array[j - 1];
                        array[j - 1] = temp;
                    }
                }
            }
            return array;
        }
    

    相关文章

      网友评论

          本文标题:C#中,实现插入排序,支持int和float

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