2014年2月5日 星期三

[C#] 不重複的52個數字

說明 :
利用IndexOf() 方法 確認容器裡面不要有相同的數值
然後Add() 加到最後一個位置
ps. 後面p1 ...p4 就是分配給四個人(有點像發牌XD)

如果有更好、更好簡易的算法,請指導一下,謝謝。


  1. List<int> ary = new List<int>();
  2.             Random rnd = new Random();
  3.             int num = 0;
  4.             do
  5.             {
  6.                 num = rnd.Next(52);
  7.                 if (ary.IndexOf(num) == -1)
  8.                 {
  9.                     ary.Add(num);
  10.                 }
  11.             } while (ary.Count < 52);
  12.             List<int> p1 = ary.GetRange(013);
  13.             p1.Sort();
  14.             List<int> p2= ary.GetRange(1313);
  15.             p2.Sort();
  16.             List<int> p3 = ary.GetRange(2613);
  17.             p3.Sort();
  18.             List<int> p4 = ary.GetRange(3913);
  19.             p4.Sort();

沒有留言:

張貼留言