日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

移除集合效率高还是add高_效率比较--集合

發(fā)布時(shí)間:2024/9/15 编程问答 50 豆豆
生活随笔 收集整理的這篇文章主要介紹了 移除集合效率高还是add高_效率比较--集合 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

List

ArrayList

實(shí)現(xiàn)原理內(nèi)部封裝Object[]數(shù)組(若創(chuàng)建時(shí)未指定長(zhǎng)度?數(shù)組初始長(zhǎng)度默認(rèn)為10)

實(shí)質(zhì)為?:無序數(shù)組?插入快?查找和刪除指定元素慢

總結(jié)

O(1)

O(N)

O(1)?System.arraycopy

get(int?i)

Y

set(int?index,Object?obj)

Y

add(Object?obj)

Y

add(int?index,Object?obj)

Y

remove(int?index)

remove(Object?o)

Y

contains(Object?obj)

Y

結(jié)論(實(shí)驗(yàn)ArrayListPerformanceTest.java)

add(int?index,?E?element)?添加元素到指定位置?效率低下

add(E?e)?添加單個(gè)元素?效率高

LinkedList

實(shí)質(zhì):雙向鏈表

O(1)

O(N)

getFirst()/getLast()

Y

removeFirst()/removeLast()

Y

addFirst(E?e)/?addLast(E?e)

Y

contains(Object?o)

Y

add(E?e)

Y

remove(Object?o)

Y

get(int?index)

Y

set(int?index,?E?element)

Y

實(shí)驗(yàn)結(jié)果

ArrayList?add(E?e):??????????????????? ??60460850ns

LinkedList?add(E?e):?? ?? ??54999241ns

ArrayList?remove(index):?? ??????1855036016ns

LinkedList?remove(object):? ??42823941ns

ArrayList?contains(Object?o):?? ??15517890276ns

LinkedList?contains(Object?o):? ??29827766030ns

ArrayList與LinkedList效率比較

ArrayList查找操作的效率最高為,但其在添加和刪除操作時(shí)需要拷貝數(shù)組所以效率較低,尤其是刪除操作。該數(shù)據(jù)結(jié)構(gòu)適用于需要頻繁快速查找的地方。

LinkList?查找操作效率較低為,但其插入與刪除操作效率較高,適用于需要頻繁進(jìn)行插入刪除操作的情況。

MAP

HashMap

Map是一組key-value(鍵值對(duì))集合,其中的key(鍵)不能重復(fù)。

HashMap?用key對(duì)象生成hashcode然后映射到Entry[]數(shù)組中(JDK1.6中其hashtable默認(rèn)大小為16,在持有對(duì)象數(shù)量查過默認(rèn)大小之后就會(huì)重新生成一個(gè)更大HashTable,然后將原有持有的對(duì)象逐個(gè)散列到新哈希表中)。其get(Object?key)最佳時(shí)間復(fù)雜度為O(1),最壞則為O(n)。但就查找的平均效率來說是要高于TreeMap。

TreeMap?用key對(duì)象為關(guān)鍵值存放在RBTree(紅黑樹)中。其get(Object?key)方法的平均時(shí)間復(fù)雜度為O(logn)。

References?Resource

總結(jié)

以上是生活随笔為你收集整理的移除集合效率高还是add高_效率比较--集合的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。