Array vs. Vector vs. Linked List
♥0 |
Line 57 |
Modified 2010-11-15 17:56:48 |
MIT License
archived:2017-03-20 12:32:32
ActionScript3 source code
/**
* Copyright jozefchutka ( http://wonderfl.net/user/jozefchutka )
* MIT License ( http://www.opensource.org/licenses/mit-license.php )
* Downloaded from: http://wonderfl.net/c/9V6L
*/
package
{
import flash.display.Sprite;
import flash.display.StageAlign;
import flash.display.StageScaleMode;
import flash.text.TextField;
import flash.ui.Multitouch;
[SWF(width="465", height="465", frameRate="30", backgroundColor="#FFFFFF")]
public class WonderflApp extends Sprite
{
public var tf:TextField = new TextField();
public function WonderflApp():void
{
var count:uint = 1000000;
stage.scaleMode = StageScaleMode.NO_SCALE;
stage.align = StageAlign.TOP_LEFT;
var i:uint = count;
var d0:Date = new Date();
var array:Array = new Array();
while(i--)
array.push(new Item)
var d1:Date = new Date();
i = count;
var last:Item = new Item;
while(i--)
last = last.next = new Item;
var d2:Date = new Date();
i = count;
var list:Vector.<Item> = new Vector.<Item>;
while(i--)
list.push(new Item);
var d3:Date = new Date();
var list2:Vector.<Item> = new Vector.<Item>(count, true);
i = count;
while(i--)
list2[i] = new Item;
var d4:Date = new Date();
addChild(tf);
tf.appendText("array : " + (d1.time - d0.time) + "ms \n");
tf.appendText("linked list: " + (d2.time - d1.time) + "ms \n");
tf.appendText("vector: " + (d3.time - d2.time) + "ms \n");
tf.appendText("vector2: " + (d4.time - d3.time) + "ms \n");
tf.multiline = true;
tf.height = 200;
tf.width = 200;
tf.background = true;
tf.border = true;
}
}
}
final class Item
{
public var next:Item;
public function item():void
{
}
}