程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> .NET網頁編程 >> C# >> C#入門知識 >> C#完成對數組停止隨機排序類實例

C#完成對數組停止隨機排序類實例

編輯:C#入門知識

C#完成對數組停止隨機排序類實例。本站提示廣大學習愛好者:(C#完成對數組停止隨機排序類實例)文章只能為提供參考,不一定能成為您想要的結果。以下是C#完成對數組停止隨機排序類實例正文


本文實例講述了C#完成對數組停止隨機排序類。分享給年夜家供年夜家參考。詳細以下:

這個一個擴大C#隨機數產生器的類,可以隨機生成指定規模的數字,可以隨機對數組停止排序,異常好用

using System;
namespace DotNet.Utilities
{
  /// <summary>
  /// 應用Random類生成偽隨機數
  /// </summary>
  public class RandomHelper
  {
    //隨機數對象
    private Random _random;
    #region 結構函數
    /// <summary>
    /// 結構函數
    /// </summary>
    public RandomHelper()
    {
      //為隨機數對象賦值
      this._random = new Random();
    }
    #endregion
    #region 生成一個指定規模的隨機整數
    /// <summary>
    /// 生成一個指定規模的隨機整數,該隨機數規模包含最小值,但不包含最年夜值
    /// </summary>
    /// <param name="minNum">最小值</param>
    /// <param name="maxNum">最年夜值</param>
    public int GetRandomInt(int minNum, int maxNum)
    {
      return this._random.Next(minNum, maxNum);
    }
    #endregion
    #region 生成一個0.0到1.0的隨機小數
    /// <summary>
    /// 生成一個0.0到1.0的隨機小數
    /// </summary>
    public double GetRandomDouble()
    {
      return this._random.NextDouble();
    }
    #endregion
    #region 對一個數組停止隨機排序
    /// <summary>
    /// 對一個數組停止隨機排序
    /// </summary>
    /// <typeparam name="T">數組的類型</typeparam>
    /// <param name="arr">須要隨機排序的數組</param>
    public void GetRandomArray<T>(T[] arr)
    {
      //對數組停止隨機排序的算法:隨機選擇兩個地位,將兩個地位上的值交流
      //交流的次數,這裡應用數組的長度作為交流次數
      int count = arr.Length;
      //開端交流
      for (int i = 0; i < count; i++)
      {
        //生成兩個隨機數地位
        int randomNum1 = GetRandomInt(0, arr.Length);
        int randomNum2 = GetRandomInt(0, arr.Length);
        //界說暫時變量
        T temp;
        //交流兩個隨機數地位的值
        temp = arr[randomNum1];
        arr[randomNum1] = arr[randomNum2];
        arr[randomNum2] = temp;
      }
    }
    #endregion
  }
}

願望本文所述對年夜家的C#法式設計有所贊助。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved