110,499
社区成员
发帖
与我相关
我的任务
分享
class Program
{
static void Main(string[] args)
{
List<Node> list = new List<Node>();
Random r = new Random();
for (int i = 0; i < 100; i++)
{
list.Add(new Node{Index=i,Value=r.Next(0,100)});
}
list.Sort(delegate(Node a, Node b) { return a.Value - b.Value; });
foreach (Node node in list)
{
Console.WriteLine(node.Index);
}
Console.ReadKey();
}
}
class Node
{
public int Index
{
get;set;
}
public int Value
{
get;set;
}
}
这个可行不,谁有好点的办法
/*
2层循环纯算法;
用list<>优化的2层循环纯算法;
用Arraylist,Contains,Add筛选的;
先生成随机数组,然后洗牌;
*/
//以及为了实现而实现的方法,机器不好的不要跑了,效率很高:
import java.util.Random;
public class test {
public static void main(String[] args) {
byte list[] = new byte[3000];
for(int i=0;i<list.length;i++){
list[i] = 0;
}
Random random = new Random();
int k = 0;
for(int j=0;j<1000;j++){
k = random.nextInt(2000);
if(list[k] == 1){
System.out.println(k+"已存在数组中");
}else{
System.out.println(k+"不在数组中,将它放入");
list[k] = 1;
}
}
System.out.println("数组的内容是:");
for(int l=0;l<list.length;l++){
if(list[l] == 1){
System.out.print(l+",");
}
}
}
}
class Program
{
static void Main(string[] args)
{
int[] array = new int[100]; //定义一个长度为100数组
for (int i = 0; i < array.Length; i++)
{
label://标签
Random Rnd = new Random();
int a = (int)Rnd.Next(1, 101);
array[i] = a; //产生随机数赋值给数组
for (int j = 0; j < i; j++)
{
//判断随机数是否有重复
if (array[j] == array[i])
{
goto label; //跳转执行到label,继续产生随机数
}
}
Console.Write(array[i] + " \t");//输出数组中的元素
}
}
}
int[] data = new int[101];
for (int i = 0; i <= 100; )
{
data[i] = i++;
}
Random rand = new Random();
for (int i = 0; i <= 100; i++)
{
int r = rand.Next(0, 101);
int v = data[r];
data[r] = data[i];
data[i] = v;
}
for (int i = 0; i <= 100; i++)
{
System.Out.Print(data[i]);
}
int[] numbers = new int[100];
for (int i = 0; i < 100; i++)
numbers[i] = i;
Random rd = new Random();
int index, realLength = numbers.Length, temp;
for (int i = 0; i < 100; i++)
{
index = rd.Next(realLength);
Response.Write(numbers[index] + "<br/>");
temp = numbers[index];
numbers[index] = numbers[realLength - 1];
numbers[realLength - 1] = temp;
realLength--;
}
ArrayList numbers = new ArrayList();
for (int i = 0; i < 100; i++)
numbers.Add(i);
Random rd = new Random();
int index;
for (int i = 0; i < 100; i++)
{
index = rd.Next(numbers.Count);
Response.Write(numbers[index] + "<br/>");
numbers.RemoveAt(index);
}
Random random = new Random();
LinkedList<int> lList=new LinkedList<int>();
for(i=1;i<=100;i++)
{
lList.add(i);
}
for(i=1;i<=100;i++)
{
int iRan = random .Next(0,l00-i);
// 取随机数
lList[iRan];
lList.RemoveAt(iRan);
}
Random random = new Random();
LinkedList<int> lList=new LinkedList<int>();
for(i=1;i<=100;i++)
{
lList.add(i);
}
for(i=1;i<=100;i++)
{
int iRan = random .Next(0,l00-i);
// 取随机数
lList[iRan];
}