最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

C#實現(xiàn)對數(shù)組進(jìn)行隨機(jī)排序類實例

 更新時間:2015年03月25日 10:51:40   作者:feige  
這篇文章主要介紹了C#實現(xiàn)對數(shù)組進(jìn)行隨機(jī)排序類,實例分析了C#數(shù)組與隨機(jī)數(shù)操作技巧,非常具有實用價值,需要的朋友可以參考下

本文實例講述了C#實現(xiàn)對數(shù)組進(jìn)行隨機(jī)排序類。分享給大家供大家參考。具體如下:

這個一個擴(kuò)充C#隨機(jī)數(shù)發(fā)生器的類,可以隨機(jī)生成指定范圍的數(shù)字,可以隨機(jī)對數(shù)組進(jìn)行排序,非常好用

using System;
namespace DotNet.Utilities
{
  /// <summary>
  /// 使用Random類生成偽隨機(jī)數(shù)
  /// </summary>
  public class RandomHelper
  {
    //隨機(jī)數(shù)對象
    private Random _random;
    #region 構(gòu)造函數(shù)
    /// <summary>
    /// 構(gòu)造函數(shù)
    /// </summary>
    public RandomHelper()
    {
      //為隨機(jī)數(shù)對象賦值
      this._random = new Random();
    }
    #endregion
    #region 生成一個指定范圍的隨機(jī)整數(shù)
    /// <summary>
    /// 生成一個指定范圍的隨機(jī)整數(shù),該隨機(jī)數(shù)范圍包括最小值,但不包括最大值
    /// </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的隨機(jī)小數(shù)
    /// <summary>
    /// 生成一個0.0到1.0的隨機(jī)小數(shù)
    /// </summary>
    public double GetRandomDouble()
    {
      return this._random.NextDouble();
    }
    #endregion
    #region 對一個數(shù)組進(jìn)行隨機(jī)排序
    /// <summary>
    /// 對一個數(shù)組進(jìn)行隨機(jī)排序
    /// </summary>
    /// <typeparam name="T">數(shù)組的類型</typeparam>
    /// <param name="arr">需要隨機(jī)排序的數(shù)組</param>
    public void GetRandomArray<T>(T[] arr)
    {
      //對數(shù)組進(jìn)行隨機(jī)排序的算法:隨機(jī)選擇兩個位置,將兩個位置上的值交換
      //交換的次數(shù),這里使用數(shù)組的長度作為交換次數(shù)
      int count = arr.Length;
      //開始交換
      for (int i = 0; i < count; i++)
      {
        //生成兩個隨機(jī)數(shù)位置
        int randomNum1 = GetRandomInt(0, arr.Length);
        int randomNum2 = GetRandomInt(0, arr.Length);
        //定義臨時變量
        T temp;
        //交換兩個隨機(jī)數(shù)位置的值
        temp = arr[randomNum1];
        arr[randomNum1] = arr[randomNum2];
        arr[randomNum2] = temp;
      }
    }
    #endregion
  }
}

希望本文所述對大家的C#程序設(shè)計有所幫助。

相關(guān)文章

  • C# 獲取漢字的拼音首字母

    C# 獲取漢字的拼音首字母

    一種是把所有中文字符集合起來組成一個對照表;另一種是依照漢字在Unicode編碼表中的排序來確定拼音的首字母。碰到多音字時就以常用的為準(zhǔn)(第一種方法中可以自行更改,方法為手動把該漢字移動到對應(yīng)的拼音首字母隊列,我們這里介紹第二種
    2015-06-06
  • C#實現(xiàn)FTP傳送文件的示例

    C#實現(xiàn)FTP傳送文件的示例

    這篇文章主要介紹了C#實現(xiàn)FTP傳送文件的示例,幫助大家更好的理解和學(xué)習(xí)c#的使用,感興趣的朋友可以了解下
    2020-12-12
  • C#實現(xiàn)數(shù)據(jù)去重的方式總結(jié)

    C#實現(xiàn)數(shù)據(jù)去重的方式總結(jié)

    這篇文章主要來和大家一起來討論一下關(guān)于C#數(shù)據(jù)去重的常見的幾種方式,每種方法都有其特點和適用場景,感興趣的小伙伴可以了解一下
    2023-07-07
  • C#中字符串合并的多種實現(xiàn)方法

    C#中字符串合并的多種實現(xiàn)方法

    字符串合并是將兩個或多個字符串組合成一個單一字符串的過程,在項目開發(fā)中非常常見,C#也為我們提供非常多字符串合并方式,下面一起盤點下,感興趣的小伙伴跟著小編一起來看看吧
    2025-01-01
  • C#生成PDF的方法

    C#生成PDF的方法

    這篇文章主要介紹了C#生成PDF的方法,幫助大家更好的理解和使用c#編程語言,感興趣的朋友可以了解下
    2020-12-12
  • C#中Action和Func的區(qū)別

    C#中Action和Func的區(qū)別

    這篇文章主要介紹了C#中Action和Func的區(qū)別,是進(jìn)行C#程序設(shè)計時需要加以注意的知識點,需要的朋友可以參考下
    2014-09-09
  • C#實現(xiàn)終止正在執(zhí)行的線程

    C#實現(xiàn)終止正在執(zhí)行的線程

    這篇文章主要介紹了C#實現(xiàn)終止正在執(zhí)行的線程的方法,針對臨界資源等容易出現(xiàn)錯誤的地方進(jìn)行了分析,并提出了改進(jìn)方案與實例,需要的朋友可以參考下
    2014-09-09
  • c#使用反射調(diào)用類型成員示例

    c#使用反射調(diào)用類型成員示例

    學(xué)習(xí)C#的時候就知道使用反射可以對我們編程提供極大的便利(動態(tài)的獲取信息、調(diào)用類型成員、創(chuàng)建實例等等),下面示例說明一下使用方法
    2014-01-01
  • C#使用AutoMapper實現(xiàn)類映射詳解

    C#使用AutoMapper實現(xiàn)類映射詳解

    AutoMapper是一個用于.NET中簡化類之間的映射的擴(kuò)展庫,這篇文章主要介紹了C#如何使用AutoMapper實現(xiàn)類映射,感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下
    2024-01-01
  • 少見的C# RSA算法

    少見的C# RSA算法

    這篇文章主要介紹了非常少見的C# RSA算法,文章簡單易懂,實例代碼幫助大家更好的學(xué)習(xí),感興趣的朋友可以了解下
    2020-06-06

最新評論

焦作市| 武安市| 乐平市| 德庆县| 平武县| 五原县| 永靖县| 托里县| 明光市| 和平区| 奉化市| 基隆市| 临湘市| 中江县| 西宁市| 梁河县| 上饶县| 兴山县| 丹寨县| 汉中市| 天气| 宣恩县| 北票市| 随州市| 玛多县| 曲靖市| 大冶市| 连州市| 泽州县| 尚义县| 房山区| 罗江县| 临朐县| 鄂托克前旗| 天峻县| 拉萨市| 星子县| 基隆市| 宁波市| 田林县| 抚顺县|