当前位置:编程学习 > C#/ASP.NET >>

排序的问题

我输入一组数!按升序排,想插入一个数,再让它排序出来? --------------------编程问答-------------------- 你可以用List<>来存储数据,然后使用sort方法来实现排序。
比如:
        List<int> nums = new List<int>();
        nums.Add(1);
        nums.Add(6);
        nums.Add(3);
        nums.Add(7);

        nums.Sort(new Compare());//其中Compare是一个实现了ICompare<>的类,调用后,会得到从小到大排序的数。

        //用于排序的类
        internal class Compare : IComparer<int>
        {
            #region IComparer<int> 成员

            public int Compare(int x, int y)
            {
                if (x > y)
                {
                    return 1;
                }
                else if (x == y)
                {
                    return 0;
                }
                else
                {
                    return -1;
                }
            }

你可以每次插入一个数据后,都调用一下Sort方法。 --------------------编程问答-------------------- int [] array = new int[10];
            for(int i =0; i < 10; ++i)
            {
                array[i] = i * 2;
            }
List<int> list = new List<int>();
            list.AddRange(array);
            int dest = 7;
            int index = 0;
            for(int i =0; i < list.Count;++i)
            {
                if(list[i] > dest)
                {
                    index = i;
                    break;
                }
            }
            list.Insert(index, dest);
            array = list.ToArray(); --------------------编程问答-------------------- 你用啥编
补充:.NET技术 ,  C#
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,