AS3 随机排序

主要是两种方法,

 

package  {
	import flash.display.MovieClip;
	import flash.utils.Dictionary;
	
	public class Main extends MovieClip {
	
		
		public function Main() {

			var temp:Array = new Array();
			
			for(var i=1;i<=10;i++){
				temp.push(i);
			}
			randomSort(temp);
		}
		
		public function randomSort(arr:Array):void{
			var copyArr:Array = arr.slice();
			trace(copyArr);
			var l = arr.length;
			
			while(l){
				arr[l-1]=copyArr.splice(int(Math.random()*l--),1)[0];
			}
			trace(arr);
			
		}
		
		public function SelectRandomSort(arr:Array):void{
			var index:int;
			var temp:*;
			for(var i=arr.length-1;i>0;i--){
				index = Math.floor(Math.random()*(i+1));
				if(index==i) continue ;
				temp = arr[index];
				arr[index] = arr[i];
				arr[i] = temp;
			}
			
			trace(arr);
			
		}

	}
	
	
}


另多见人用array.sort(function(a:int,b:int):int{return Math.random()>0.51?-1 }); 排序,经试验此方法不随机数。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值