Показать сообщение отдельно
Старый 12.11.2012, 12:28
КорДум вне форума Посмотреть профиль Отправить личное сообщение для КорДум Найти все сообщения от КорДум
  № 2  
Ответить с цитированием
КорДум
 
Аватар для КорДум

блогер
Регистрация: Jan 2008
Адрес: syktyvkar
Сообщений: 3,803
Записей в блоге: 10
Как-то ваял.
Код AS3:
package ru.kordum.utils {
 
	/**
	 * @author KorDum
	 */
 
	public class ArrayShuffler {
		private static var _array:Array;
 
		//---------------------------------------------------------------------------
		//
		// CONSTRUCTOR
		//
		//---------------------------------------------------------------------------
 
		public function ArrayShuffler() {
 
		}
 
 
		//---------------------------------------------------------------------------
		//
		// PRIVATE STATIC METHODS
		//
		//---------------------------------------------------------------------------
 
		private static function startRandomize():void {
			var length:uint = _array.length;
 
			while (length--) {
				var n:int = Math.random() * (length + 1);
				swap(length, n);
			}
		}
 
 
		private static function swap(x:uint, y:uint):void{
			var temp:* = _array[x];
			_array[x] = _array[y];
			_array[y] = temp;
		}
 
 
		//---------------------------------------------------------------------------
		//
		// PUBLIC STATIC METHODS
		//
		//---------------------------------------------------------------------------
 
		public static function randomize(array:Array, count:uint = 1):Array {
			if (!array) return null;
 
			_array = array.slice();
 
			for (var i:uint = 0; i < count; i++) {
				startRandomize();
			}
 
			return _array;
		}
	}
}
__________________
тут я