54张牌 要求随机 顺序会发生改变

来源:互联网 发布:4k视频剪辑软件 编辑:程序博客网 时间:2024/04/29 17:16

54张牌 要求随机 顺序会发生改变 今天面试的时候没搞出来 晕 脑子一片空白 现在为了安慰自己 回家写了一个 大家参考一下

//using System;
//
//namespace ConsoleApplication1
//{
// /// <summary>
// /// Class1 的摘要说明。
// /// </summary>
// class Class1
// {
//  /// <summary>
//  /// 应用程序的主入口点。
//  /// </summary>
//  [STAThread]
//  static void Main(string[] args)
//  {
//   //
//   // TODO: 在此处添加代码以启动应用程序
//   //
//  }
// }
//}


using System;
using System.Collections;

namespace RandomCode
{
 /// <summary>
 /// 随机发54张牌
 /// </summary>
 class MySolution
 {
  class AppSolution
  {
   const int MAX = 54;
   ArrayList arrResoult;
   ArrayList arrResoultNum;

   public AppSolution()
   {
    arrResoult =  new ArrayList(MAX);
    arrResoultNum = new ArrayList(MAX);

    for(int i = 0;i < MAX;i++)
    {
     arrResoult.Add((int)0);
     arrResoultNum.Add((int)0);
    }
   }

   public void Run()
   {
    int Count = 0;
    int arrNum = 0;
    Random seed =  new Random(DateTime.Now.Millisecond);
    do
    {
     arrNum = seed.Next(MAX);//arrNum=seed.Next(MAX);Random seed=new Random(DateTime.Now.Millisecond)
     if((int)arrResoult[arrNum] < 1)
     {
      arrResoult[arrNum] = 1;// 这个用来控制他 是否 已经生成过
      arrResoultNum[Count] = arrNum;
      Count++;
     }
    }while(Count != MAX);
   }

   public void Display()
   {
    foreach(int arrNum in arrResoultNum)
    {
     Console.Write("{0}/t",arrNum);
    }
    Console.WriteLine();
   }

   public void Sort()
   {
    arrResoultNum.Sort();
   }
  }

  [STAThread]
  static void Main(string[] args)
  {
   AppSolution app = new AppSolution();
   app.Display();
   app.Run();
   app.Display();
   app.Sort();
   app.Display();
   string cmdInput = Console.ReadLine();
  }
 }
}

原创粉丝点击