vb.net如何打乱数组 数组vb编程问题

VB.NET是否有数组排序方法

游戏中遇到这样的问题,需要将一组已知的数据打乱,按照以前和现在的做法,总结了以下方法。

目前创新互联公司已为千余家的企业提供了网站建设、域名、网络空间、绵阳服务器托管、企业网站设计、大新网站维护等服务,公司将坚持客户导向、应用为本的策略,正道将秉承"和谐、参与、激情"的文化,与客户和合作伙伴齐心协力一起成长,共同发展。

方法一,最笨的菜鸟方法,也是容易想到的(幸好我没想过这种方法 :))

从已知数组中随机一个数,然后加入到另一个数组中,在加入之前,先检查是否已经加入过。

这种方法有很大运气成分,且数据越大,效率越低,超过一定数目,则程序几乎无法执行,会一直卡在那里,代码:

[java] view plain copy

package com.test;

import java.util.Random;

public class TestArray {

public static int runCount =0;//用于记录方法运算次数

怎样将一个数组内元素的顺序打乱

数组大小 n; 一次产生2个 随机下标,交换这2个数;像炒饭似地 做它100次,就打得够乱了。

例子:

#includestdio.h

#includetime.h

int main( )

{

int a[50],v;

int i,i1,i2;

int n=50;

for (i=0;in;i++) a[i]=i;

srand(time(NULL));

for(i=0;i100;i++){

i1 = rand() % n;

i2 = rand() % n;

v=a[i1];a[i1]=a[i2];a[i2]=v;

}

for (i=0;in;i++) {

if (i % 10 == 0) printf("\n");

printf("%4d ",a[i]);

};

return 0;

}

VB 打乱数组 简单的说就是有一个数组(1,2,3,4) 他这个数组顺序打乱!求高人指点

Dim a(20), k

Dim i As Integer, j As Integer

Randomize

For i = 0 To 20

a(i) = i

Next

Print "原始数组:"  Join(a, ", ")

For i = 0 To 20

j = Int(Rnd * (UBound(a) + 1))

k = a(i)

a(i) = a(j)

a(j) = k

Next

Print "打乱后的:"  Join(a, ", ")


文章标题:vb.net如何打乱数组 数组vb编程问题
网页地址:http://scyanting.com/article/hhieoe.html