• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号
您的位置:首页 > 程序设计 >C#教程 > C#实现对数组进行随机排序类实例

C#实现对数组进行随机排序类实例

作者:feige 字体:[增加 减小] 来源:互联网 时间:2017-05-28

feige 通过本文主要向大家介绍了c#实例化数组,c#对象数组实例化,c#类数组,c#定义类数组,c#类数组初始化等相关知识,希望对您有所帮助,也希望大家支持linkedu.com www.linkedu.com

本文实例讲述了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
  }
}
</div>

希望本文所述对大家的C#程序设计有所帮助。

</div>
分享到:QQ空间新浪微博腾讯微博微信百度贴吧QQ好友复制网址打印

您可能想查找下面的文章:

  • C#中数组段用法实例分析
  • C#中动态数组用法实例
  • C#实现对数组进行随机排序类实例
  • C#数组反转与排序实例分析
  • C# 数组实例介绍(图文)
  • C#各种数组的用法实例演示

相关文章

  • 2017-05-28C#通过正则表达式实现提取网页中的图片
  • 2017-05-28C# 中的var关键字详细介绍
  • 2017-05-28C#判断指定文件是否是只读的方法
  • 2017-05-28C#通过DataSet读写xml文件的方法
  • 2017-05-28C# 骑士飞行棋的源码(分享)
  • 2017-05-28C#画图之饼图折线图的实现方法
  • 2017-05-28C#实现对数组进行随机排序类实例
  • 2017-05-28详谈C# 图片与byte[]之间以及byte[]与string之间的转换
  • 2017-05-28浅谈Async和Await如何简化异步编程(几个实例让你彻底明白)
  • 2017-05-28DevExpress中GridControl列转义的实现方法

文章分类

  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号

最近更新的内容

    • c#图片处理之图片裁剪成不规则图形
    • C#实现图片分割方法与代码
    • C#中的数组作为参数传递所引发的问题
    • C#为配置文件加密的实现方法
    • C#泛型实例详解
    • C#加密在实际中的应用
    • 轻松学习C#的密封类
    • C#开发Android百度地图手机应用程序(多地图展示)
    • C#连接数据库和更新数据库的方法
    • 用 C# 编写一个停放在任务栏上的图标程序

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有