java 資料結構

2021-09-24 03:16:29 字數 1557 閱讀 6393

private void initmap() 

log.d(tag, map.tostring());

log.d(tag, weakmap.tostring());

log.d(tag, treemap.tostring());

log.d(tag, hamap.tostring());

log.d(tag, linkmap.tostring());

/用keyset()遍歷

for (string key : map.keyset())

///用entryset()遍歷

for (map.entryentry : map.entryset())

//用keyset()遍歷

iteratoriterator = map.keyset().iterator();

while (iterator.hasnext())

//用entryset()遍歷

iterator> iterator1 = map.entryset().iterator();

while (iterator1.hasnext())

//增強for迴圈使用方便,但效能較差,不適合處理超大量級的資料。

////迭代器的遍歷速度要比增強for迴圈快很多,是增強for迴圈的2倍左右。

////使用entryset遍歷的速度要比keyset快很多,是keyset的1.5倍左右。

//map 按照value 排序

// 通過arraylist建構函式把map.entryset()轉換成list

list> list = new arraylist>(map.entryset());

// 通過比較器實現比較排序

collections.sort(list, new comparator>()

});for (string key : map.keyset())

}private void initvector()

strin**ector.add("sss");

log.d(tag, strin**ector.tostring());

//這種方式最快

for (int i=0; i();

for (int i= 0;i<15;i++)

log.d(tag, stringstack.tostring());

}private void initset()

integerset.add(111);

stringset.add("sss");

stringset.add("ssssss1");

stringset1.add("ajack");

log.d(tag, stringset.tostring());

log.d(tag, integerset.tostring());

log.d(tag, stringset1.tostring());

iteratoriterator = stringset.iterator();

while (iterator.hasnext())

}

Java資料結構

arraylist 基於 array,在記憶體中占有連續空間,所以get index 時候,根據陣列首位址 偏移量就可以取到值 linklist 基於link,在記憶體中不連續,每個元素只知道下乙個元素,所以get時候,只能從首元素開始乙個乙個去找,效率相對較慢 增加刪除 arraylist 需要變...

java資料結構 佇列

1.用鍊錶實現單向佇列 package com.jzm.stackqueuetree public class linkqueue end constructor private class node end constructor private t getdata private node ge...

java資料結構 堆

1.由於用陣列來模擬堆的資料存放比較方便,且陣列0號位置作為哨兵 package com.jzm.heapmap public class maxheap public maxheap int size end constructor public boolean isempty 判斷是否為空 pu...