得到一定范围内不重复的随机排列数

using System.Collections;

      

  /// <summary>
        /// 将一定范围内的数字进行随机排列
        /// </summary>
        /// <param name="maxValue">范围的上限值</param>
        /// <returns>返回一个整形数组</returns>

       public int[] GenerateRandomNum(int maxValue)
        {

            Hashtable hashtable = new Hashtable();//实例化一个Hashtable
            int[] randNum = new int[maxValue];//初始化数组的大小
            int j = 0;
            Random rm = new Random();//实例化伪随机类
            for (int i = 0; hashtable.Count < maxValue; i++)
            {
                int nValue = rm.Next(maxValue);
                if (!hashtable.ContainsValue(nValue))
                {
                    hashtable.Add(nValue, nValue);
                    randNum[j] = nValue;
                    j++;
                }
            }
            return randNum;

        }

posted on 2012-08-16 22:44  fly_sky010  阅读(430)  评论(3)    收藏  举报