这道题目很值得思考,以下分别用三种方式搞定,第三种方式拒绝使用contains方法。

方法一:

int[] arr = new int[100];
// while (true)
// {
// Random rand = new Random();

// for (int j = 0; j < 100; j++)
// {
// int m = rand.Next(1, 200);

// if (!arr.Contains(m))
// {
// arr[j] = m;
// }
// else
// j--;
// }
// break;

方法一变形:

int[] arr = new int[100];
Random rnd = new Random ();

for (int i = 0; i < 100; )
{
int j= rnd.Next(1, 101);
if (arr.Contains(j) == false )
{
arr[i] = j;
i++;
}

}

for (int k = 0; k < 100; k++)
{
Console.Write(arr[k] + " ");
}

方法二:

//int[] arr = new int[100];
//ArrayList list = new ArrayList();
//Random rand = new Random();
//while (list.Count < 100)
//{
// int num = rand.Next(1, 105);
// if (!list.Contains(num))
// list.Add(num);
//}
//for (int i = 0; i < 100; i++)
// arr[i] = (int)list[i];

方法三:

int[] arr1 = new int[100];
int[] arr2 = new int[100];
for (int i = 0; i < 100; i++)
arr1[i] = i;

Random rand=new Random();
int end=100-1;
for(int i=0;i<total;i++)
{
int num= rand.Next(0, end+1);
arr2[i] = arr1[num];
arr2[num] = arr2[end];
end--;
}

转载于:https://www.cnblogs.com/zhanying/p/4063802.html

经典算法题随机从连续的100个不重复数中取出100个不重复随机数相关推荐

  1. python全排序算法题_Python的100道经典算法题(1)

    按照c语言的100道经典算法题,自己原创写的,就得是自己的练习题了 [程序1] 题目:有1.2.3.4个数字,能组成多少个互不相同且无重复数字的三位数?都是多少? 程序分析:可填在百位.十位.个位的数 ...

  2. java经典100例算法题_10道java经典算法题,每一题都能帮你提升java水平!

    JAVA经典算法题 [程序1] 题目:古典问题:有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第四个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子总数为多少? 1.程序分析:兔子 ...

  3. 经典算法题每日演练——第十题 树状数组

    原文:经典算法题每日演练--第十题 树状数组 有一种数据结构是神奇的,神秘的,它展现了位运算与数组结合的神奇魅力,太牛逼的,它就是树状数组,这种数据结构不是神人是发现不了的. 一:概序 假如我现在有个 ...

  4. 经典算法题每日演练——第六题 协同推荐SlopeOne 算法

    原文:经典算法题每日演练--第六题 协同推荐SlopeOne 算法 相信大家对如下的Category都很熟悉,很多网站都有类似如下的功能,"商品推荐","猜你喜欢&quo ...

  5. 经典算法题每日演练——第二十二题 奇偶排序

    原文:经典算法题每日演练--第二十二题 奇偶排序 这个专题因为各种原因好久没有继续下去了,MM吧...你懂的,嘿嘿,不过还得继续写下去,好长时间不写,有些东西有点生疏了, 这篇就从简单一点的一个&qu ...

  6. 经典算法题每日演练——第十九题 双端队列

    经典算法题每日演练--第十九题 双端队列 原文:经典算法题每日演练--第十九题 双端队列 话说大学的时候老师说妹子比工作重要~,工作可以再换,妹子这个...所以...这两个月也就一直忙着Fall in ...

  7. 经典算法题每日演练——第一题 百钱买百鸡

    经典算法题每日演练--第一题 百钱买百鸡 原文:经典算法题每日演练--第一题 百钱买百鸡 百钱买百鸡的问题算是一套非常经典的不定方程的问题,题目很简单:公鸡5文钱一只,母鸡3文钱一只,小鸡3只一文钱, ...

  8. 每日经典算法题(十三) 逆推算法(平方根相关)

    每日经典算法题(十三) 逆推算法(平方根相关) 平方根:Square Root 题目 有一个整数,它加上 100 后是一个 完全平方数 ,再加上 168 又是一个 完全平方数 ,请问该数是多少? 程序 ...

  9. 字节跳动经典算法题:给定一个数n如23121;给定一组数字a如[2 4 9]求由a中元素组成的小于n的最大数

    字节跳动经典算法题(提问次数最多) 题目描述:给定一个数n如23121:给定一组数字a,如[2 4 9]:求由a中元素组成的小于n的最大数. 思路分析:暴力分析手法 1. 判断该位的数值是否在数字a中 ...

  10. 经典算法题每日演练——第七题 KMP算法

    原文:经典算法题每日演练--第七题 KMP算法 在大学的时候,应该在数据结构里面都看过kmp算法吧,不知道有多少老师对该算法是一笔带过的,至少我们以前是的, 确实kmp算法还是有点饶人的,如果说红黑树 ...

最新文章

  1. ModelView矩阵各列含义及说明
  2. ssh(Spring+Spring mvc+hibernate)——EmpDaoImpl.java
  3. LeetCode 108. Convert Sorted Array to Binary Search Tree
  4. jpanel网格布局添加滚动条_Java Swing GridBagLayout网格袋布局的实现
  5. java 静态绑定_java的动态绑定和静态绑定
  6. Liunx 常用命令
  7. Visio2016激活工具
  8. java微信测单删,免费查微信单删软件有哪些(推荐靠谱查单删APP)
  9. 你的 Navicat 可能被下毒了...
  10. 高数篇:11.01多元函数求极限方法
  11. 不想使用Windows自带远程桌面客户端的另外一种选择
  12. Mic Android 8.1 方案
  13. 描述12个异性追求者(互动媒体技术作业)
  14. 中小型水库雨水情测报平台有哪些功能?水库雨水情数据孪生安全监测系统
  15. SRS 代码分析【HLS切片】
  16. 【正点原子MP157连载】第四十章 Linux I2C驱动实验-摘自【正点原子】STM32MP1嵌入式Linux驱动开发指南V1.7
  17. 关于simplis仿真和驱动方法
  18. 解密一个量化对冲基金开发人员的工作内容
  19. Vue组件之间的传参方式小总结
  20. 虚拟 IP 设为静态 IP

热门文章

  1. HTML基础第九讲---表单
  2. Robot Framework 的安装配置和简单的实例介绍
  3. mysql 主从同步机制
  4. 分析数据包(Microsoft Visual Studio 2010)
  5. 给CentOS 6.7 配置IP地址
  6. python - 动态加载模块和类
  7. 编译型语言和解释性语言,c++和python
  8. 32位寄存器用法介绍
  9. Atlassian Confluence安装以及如何更改数据库
  10. kvm虚拟化学习笔记(五)之windows虚拟机性能调整