网上有各种各样产生1-100不重复随机数的方法、他们的方法都可以实现该功能;
但是很重要的问题是他们的方法都是效率十分低下的;而且处理数字重复的问题是他们很头痛的问题;
在此我分享一个思路。具体代码读者自己实现;
int array[100];
for(int i = 1; i < 101; i++)
array[i-1] = i;
此时数组array为:1 2 3 4 5 6 .......100
这样能保证array里面已经没有重复的数字了、关键这数组的值是线性递增的、而不是随机的;
讲到这里、相信聪明的读者已经知道如何有效率的实现1-100不重复随机数的产生方式了。
没错、就是把array里面的值打乱;
只要把array的值进行无序换位、就可以轻松实现1-100不重复的随机数了;
把一个产生定量非重复随机数的复杂问题转化成一个无序换位的简单问题,这方法是不是轻松地解决了头痛的数字重复问题呢?
换个角度、看到不一样的人生!