亚洲有码Av一区二区三区_国产高清啪啪免费视频_69色视频国产_国产成人人人爆出白浆_国产精品自在线拍国_一本久久伊人热热精品无码_午夜性刺激在线看免费带字幕_助力高品质欧美狂喷水_亚洲精品日韩无码_精品无码一区二区三区蜜臀_麻豆高清国产AV_熟妇人素无码中文字幕_亚洲a级片在线观看_国产欧美日韩三区_99国产成人高清在线观看

ARTICLE DETAIL

資訊詳情

深耕商務(wù)建站與企業(yè)官網(wǎng)運營的一線實戰(zhàn)洞察。

JS數(shù)組去重百萬級數(shù)據(jù)性能實測:Set為何碾壓filter+indexOf

JS數(shù)組去重百萬級數(shù)據(jù)性能實測:Set為何碾壓filter+indexOf 處理 JS 數(shù)組去重幾乎是每個前端和 Node 開發(fā)都繞不開的事。平時數(shù)據(jù)量小怎么寫都不卡可一旦數(shù)據(jù)量拉到百萬級不同去重方式之間的差距會從“都能用”變成“一個幾十毫秒、一個卡死頁面”。我之前在優(yōu)化一個數(shù)據(jù)清洗腳本時就因為順手用了filter indexOf去重 100 萬行數(shù)據(jù)跑了將近十分鐘一度以為程序死循環(huán)了。后來換成 Set幾十毫秒出結(jié)果。這個反差讓我徹底明白js 去重方式不是隨手挑一個就行在百萬級數(shù)據(jù)量級下選錯方式是真的會出事。這篇內(nèi)容主要講兩件事一是各種主流 js 去重方式的底層原理和時間復雜度二是我在百萬級數(shù)據(jù)下實際跑出來的結(jié)果以及不同場景下到底該怎么選。無論你是剛接觸前端不久還是在搞埋點日志、數(shù)據(jù)清洗這份對比和踩坑記錄都值得收藏。1. 去重方式的底層差異為什么 Set 能把百萬級數(shù)據(jù)按在地上摩擦1.1 先說結(jié)論查重思路決定時間復雜度常見的去重方式有 Set、Map、filter indexOf、對象鍵值法、排序去重、雙重循環(huán)。表面上看都是“把重復元素干掉”但它們判斷重復的方式完全不同性能差距也由此而來。Set 和 Map 底層都是哈希表結(jié)構(gòu)。插入一個元素時能平均在 O(1) 時間內(nèi)完成“這個值我之前有沒有見過”的判斷。循環(huán) n 個元素總時間復雜度就是 O(n)。filter indexOf 則完全不同每次 indexOf 都要從數(shù)組頭開始掃描判斷一個元素需要遍歷一遍已有數(shù)組內(nèi)層循環(huán)套外層循環(huán)整體就是 O(n2)。百萬級數(shù)據(jù)下n 1,000,000O(n2) 意味著大約 10^12 次操作而 O(n) 只有一百萬次理論差距就是百萬倍。即便哈希表有常數(shù)開銷這個數(shù)量級差距也已經(jīng)決定勝負了。1.2 百萬級數(shù)據(jù)量到底放大了什么100 萬條數(shù)據(jù)對瀏覽器來說已經(jīng)不是小數(shù)目。一個純數(shù)字的數(shù)組按 Number 類型每個 8 字節(jié)算大約占用 8MB 左右如果存的是字符串或者對象內(nèi)存占用會成倍上漲。這個時候如果去重方法還要創(chuàng)建大量中間數(shù)組、反復深拷貝或者出現(xiàn)嵌套循環(huán)內(nèi)存和 GC 壓力會跟著爆炸不是光慢那么簡單有可能直接把標簽頁搞崩。我用一個生活化類比indexOf 去重就像是新來一個人要挨個問前面所有人“你們見過這個人嗎”每來一個都問一遍人越多詢問次數(shù)膨脹得越離譜。而 Set 是給每個值一個獨立柜子看到新名字先打開對應柜子看看有沒有人有就跳過沒有就登記。柜子查找是常數(shù)時間即便 100 萬人也只需要 100 萬次開柜子。差距就是這么來的。1.3 核心衡量指標時間復雜度、內(nèi)存、可讀性選去重方式不能只看速度還要兼顧內(nèi)存和可讀性。時間復雜度在百萬級數(shù)據(jù)下基本決定一切Set、Map 這類哈希方案統(tǒng)治級領(lǐng)先。內(nèi)存方面Set/Map 本身要有額外哈希表開銷但相比 O(n2) 方案不斷創(chuàng)建臨時數(shù)組和頻繁調(diào)用棧通常還是更劃算??勺x性上Set 一行代碼最直觀Map 做對象數(shù)組按字段去重時邏輯也很清晰。我一般按這個順序權(quán)衡先看會不會修改原數(shù)組再看時間復雜度和內(nèi)存最后考慮代碼給別人看的時候要不要解釋半天。百萬級數(shù)據(jù)場景下時間和內(nèi)存優(yōu)先級最高代碼稍微繞一點加注釋就行但性能不行就真的不行。2. 百萬級數(shù)據(jù)實測搭一個能復現(xiàn)的基準測試2.1 測試環(huán)境與數(shù)據(jù)準備先說測試環(huán)境Node.js 18.16.0M1 MacBook Pro16G 內(nèi)存。瀏覽器端結(jié)論類似但不同 JS 引擎對 Set 的優(yōu)化有差異數(shù)字不會完全一致。想復現(xiàn)的話把代碼粘到 Node 環(huán)境直接跑就行。數(shù)據(jù)準備很關(guān)鍵。不能用固定順序的數(shù)組如果數(shù)據(jù)恰好有序排序去重會占大便宜。為了模擬真實混排數(shù)據(jù)我用隨機數(shù)生成 100 萬條數(shù)組取值范圍 0 到 499999這樣重復率不會太低也不會全部重復。生成代碼很簡單const arr Array.from({ length: 1000000 }, () Math.floor(Math.random() * 500000));這行代碼會在內(nèi)存里生成約 100 萬個隨機數(shù)。取值范圍 50 萬理論上隨機生成 100 萬個位置去重后大約 43 萬左右重復率約 57%。真實業(yè)務(wù)里的臟數(shù)據(jù)通常就是這個量級有重復但不至于全是重復。2.2 測試代碼與運行方式因為 Set 這類方案耗時可能只有幾十毫秒而 filter indexOf 直接跑 100 萬可能等到天荒地老所以我把所有方案放在同一份腳本里用 performance.now 計時多跑幾次取中位數(shù)避免單次抖動。每個方案都傳入同一個 arr但方法內(nèi)部自己拷貝需要處理的數(shù)據(jù)避免前面方法改了原數(shù)組影響后面的結(jié)果。const { performance } require(perf_hooks); function test(name, fn, data) { const start performance.now(); const result fn(data); const end performance.now(); console.log(name, (end - start).toFixed(2) ms, 去重后長度:, result.length); } // filterindexOf 在 100 萬數(shù)據(jù)下太慢單獨準備一個 5 萬子集 const smallArr arr.slice(0, 50000); test(Set去重, (data) [...new Set(data)], arr); test(Map去重, (data) [...new Map(data.map((item) [item, item])).keys()], arr); test(對象鍵值去重, (data) { const obj {}; return data.filter((item) { if (obj[item]) return false; obj[item] true; return true; }); }, arr); test(排序相鄰去重, (data) { const sorted [...data].sort((a, b) a - b); return sorted.filter((item, i) i 0 || item ! sorted[i - 1]); }, arr); test(filterindexOf, (data) data.filter((item, index) data.indexOf(item) index), smallArr);我在測試時特意把 filter indexOf 單獨放到 5 萬條數(shù)據(jù)上不直接跑 100 萬因為 100 萬條下它可能要等好幾分鐘腳本看起來就像卡死了。這也是踩坑之后學到的教訓基準測試也要先評估被測試方法能不能扛住測試規(guī)模不能拍腦袋直接全部跑 100 萬。2.3 從數(shù)據(jù)上理解為什么差了幾個數(shù)量級我這邊跑出來的結(jié)果大致如下具體數(shù)字和運行環(huán)境有關(guān)但數(shù)量級差距不會變?nèi)ブ胤绞綌?shù)據(jù)量耗時去重結(jié)果長度Set100 萬約 25~35ms約 43 萬Map100 萬約 35~45ms約 43 萬對象鍵值100 萬約 50~70ms約 43 萬排序相鄰100 萬約 120~180ms約 43 萬filterindexOf5 萬約 1500~2000ms約 4.8 萬注意表格里的 filter indexOf 只跑了 5 萬條數(shù)據(jù)。它的復雜度是 O(n2)數(shù)據(jù)量從 5 萬漲到 100 萬變成了 20 倍耗時理論上要變成 400 倍。按 1.5 秒估算到 100 萬就是 600 秒約 10 分鐘。這個數(shù)量級基本是災難不是優(yōu)化能救回來的。3. 五種主流去重方式逐個拆解與結(jié)果對比3.1 Set 去重一行代碼為什么最快Set 去重是現(xiàn)在最常用的寫法核心就是利用 Set 存唯一值的特性const unique [...new Set(arr)]; // 或者 Array.from(new Set(arr))Set 底層使用哈希表插入時計算哈希值定位到桶沖突概率小的話平均 O(1) 完成插入。整個過程只需要一次循環(huán)不需要額外的 indexOf 掃描內(nèi)存多出一份 Set 結(jié)構(gòu)的大小。字符串、數(shù)字、布爾值這些原始類型都可以直接存NaN 也能正確去重這是它相比 indexOf 方案的一個隱藏優(yōu)勢。我實際測下來100 萬數(shù)據(jù) Set 去重基本都在幾十毫秒內(nèi)代碼只有一行幾乎沒有比它更好的性價比。唯一的硬傷是對引用類型Set 比較的是引用地址而不是結(jié)構(gòu)。兩個內(nèi)容完全一樣的對象只要不是同一個引用Set 就不會去重。這個后面講對象數(shù)組去重時會單獨說。3.2 filter indexOf典型 O(n2) 反面教材代碼非常好讀const unique arr.filter((item, index) arr.indexOf(item) index);意思就是只有當某個元素在數(shù)組里第一次出現(xiàn)的位置就是當前位置時才保留它。問題在于indexOf 每次都要從數(shù)組頭部開始遍歷查找filter 本身也要整體遍歷一遍很多元素會被反復掃描。數(shù)據(jù)量小的時候沒感覺到百萬級就是災難。我這邊測 5 萬條數(shù)據(jù)已經(jīng)要 1.5 秒以上如果強行跑 100 萬10 分鐘是保守估計。這還沒算 filter 會創(chuàng)建新數(shù)組indexOf 在查找時不斷訪問原數(shù)組帶來大量內(nèi)存和 CPU 緩存開銷。真實瀏覽器環(huán)境里這段代碼會讓頁面長時間無響應體驗極差。如果業(yè)務(wù)上真的繞不開這個寫法最多也就處理幾百到幾千條數(shù)據(jù)。超過這個量級老老實實用 Set 或 Map。不要覺得 filter indexOf 簡潔就無腦用簡潔在這一場景里是陷阱。3.3 對象/Map 鍵值法和 Set 很像但陷阱不少對象鍵值法的常見寫法有兩種一種是對象當哈希表一種是 Map。先說對象const obj {}; const unique arr.filter((item) { if (obj[item]) return false; obj[item] true; return true; });這個方案看起來也是 O(n)但有幾個坑。第一對象的鍵名只能是字符串或 Symbol數(shù)字會被轉(zhuǎn)成字符串于是 1 和 1 會被當成同一個鍵。第二如果數(shù)據(jù)里有 proto、constructor 這類特殊字符串直接 obj[item] 可能造成原型鏈污染甚至誤判。第三對象普通屬性的讀寫比 Map 要慢一些。所以我用對象做百萬級測試時耗時通常是 Set 的兩倍左右。用 Map 會更穩(wěn)const map new Map(); arr.forEach((item) { if (!map.has(item)) map.set(item, true); }); const unique [...map.keys()];Map 的鍵可以是任意類型讀寫性能和 Set 接近而且不會把數(shù)字強轉(zhuǎn)字符串。如果只做去重Set 其實更合適如果后續(xù)還要保留每個鍵對應的某個值那 Map 是首選。百萬級數(shù)據(jù)下 Map 去重通常比 Set 慢 10~20ms差距不大可以接受。3.4 排序 相鄰比較時間不差但要注意副作用思路是先排序再遍歷一次只保留和上一個元素不同的值const sorted [...arr].sort((a, b) a - b); const unique sorted.filter((item, i) i 0 || item ! sorted[i - 1]);排序時間復雜度 O(n log n)比 O(n) 差一點但比 O(n2) 好很多。實測 100 萬數(shù)據(jù)大概 120~180ms某些場景下依然可用。但有兩個坑一是 sort 會改變元素順序如果你希望保留第一次出現(xiàn)的順序排序去重直接不滿足二是比較函數(shù)如果寫不好對有 NaN 的數(shù)組會得到很奇怪的結(jié)果。代碼里我用的是數(shù)字比較函數(shù)如果數(shù)組里有字符串需要換成 localeCompare 之類的比較器。還有sort 方法會修改原數(shù)組所以我先做了淺拷貝 [...arr]這也會增加一份內(nèi)存。如果原數(shù)組順序無所謂排序去重是個折中方案但能 Set 還是首選 Set因為 Set 代碼更短、更快。3.5 雙重循環(huán) / 標記法只適合小數(shù)組或特殊去重有些人不用 Set是因為業(yè)務(wù)場景要求按對象的某個字段去重或者要保持原順序。這時候可能會寫雙重循環(huán)const unique []; for (let i 0; i arr.length; i) { let isDuplicate false; for (let j 0; j unique.length; j) { if (unique[j] arr[i]) { isDuplicate true; break; } } if (!isDuplicate) unique.push(arr[i]); }這本質(zhì)上也是 O(n2)而且比 filter indexOf 還多一個數(shù)組 push百萬級數(shù)據(jù)下絕對不能碰。它唯一的優(yōu)勢是可以在比較時寫復雜邏輯比如比較對象多個字段。但更好的做法是用 Map 把查找重復的復雜度降到 O(1)循環(huán)本身保持 O(n)。對于 Canvas 里面實時處理上萬個點雙重循環(huán)勉強能用但超過 10 萬就要考慮換方案了。4. 不同業(yè)務(wù)場景下的最佳去重方案4.1 純原始值數(shù)組無腦用 Set如果數(shù)組元素是數(shù)字、字符串、布爾值這類原始值不需要額外保留每個值對應的其他信息Set 就是最優(yōu)解。代碼最簡單速度最快也不容易出錯。唯一要確認的是兼容性IE 不支持 Set但現(xiàn)在還在做 IE 適配的場景已經(jīng)不多了就算要兼容也應該用 polyfill而不是換成一個 O(n2) 的方案。我之前在優(yōu)化一個百萬級 ID 數(shù)組時試過用 reduce 手動去重代碼寫了一大段性能還是不如 Set。后面想通了簡單場景不要炫技直接const uniqueIds [...new Set(ids)];干凈、快、不容易出 bug。4.2 對象數(shù)組按字段去重用 Map 做 key 映射對象數(shù)組去重是另一個高頻場景比如日志列表按 userId 去重商品列表按 sku 去重。如果直接用 Set兩個字段相同但引用不同的對象會被當成不同元素去不掉。正確做法是用 Map把要去重的字段拼成 keyconst list [ { id: 1, name: a }, { id: 2, name: b }, { id: 1, name: c }, ]; const map new Map(); for (const item of list) { const key item.id; if (!map.has(key)) map.set(key, item); } const unique [...map.values()];如果去重字段不止一個可以把多個字段拼成一個字符串作 key但要注意分隔符的選擇。比如key ${item.type}-${item.id} 時如果 type 或 id 本身可能包含 -就會撞 key。更穩(wěn)妥的辦法是用嵌套 MapouterMap.get(type).set(id, item)或者手動構(gòu)造一個穩(wěn)定的字符串 key。JSON.stringify 一個只含目標字段的小對象也是一種辦法但要注意字段聲明順序不同會產(chǎn)生不同 key。這個坑我在實際項目中踩過兩個重復項沒被去掉統(tǒng)計數(shù)據(jù)差了一大截。4.3 超大數(shù)組內(nèi)存敏感分片處理或原地標記如果數(shù)據(jù)量不只百萬而是上千萬或者運行環(huán)境是內(nèi)存緊張的設(shè)備Set/Map 的內(nèi)存開銷也要考慮。Set 對每個元素都要維護哈希表項內(nèi)存可能比原數(shù)組大好幾倍。這時候可以分片處理比如每次處理 20 萬條去重后合并用全局 Set 存放已見值function dedupeInChunks(arr, chunkSize 200000) { const seen new Set(); const result []; for (let i 0; i arr.length; i chunkSize) { const chunk arr.slice(i, i chunkSize); for (const item of chunk) { if (!seen.has(item)) { seen.add(item); result.push(item); } } } return result; }這種寫法的時間復雜度仍是 O(n)內(nèi)存不會一次性塞入全部 Set適合數(shù)據(jù)量特別大的場景。代價是代碼變長。如果內(nèi)存非常緊張可以不 slice直接通過索引在原數(shù)組上遍歷。4.4 需要保持順序不同方案順序表現(xiàn)保留順序的需求經(jīng)常被忽略。Set、Map、filter indexOf 天然保留第一次出現(xiàn)的順序。對象鍵值法如果只用 filter 也是保留順序的但特殊鍵名有風險。排序去重會改變順序不適合需要按原順序輸出的場景。如果在去重的同時還需要把每類數(shù)據(jù)的最后一條記錄取出來Map 也可以實現(xiàn)更復雜的操作通過每次都更新 value 就行。這是 Set 做不到的需要按場景選型。4.5 性能速查表方案時間復雜度內(nèi)存占用是否保序百萬級實測參考適用場景SetO(n)中是25~35ms原始值數(shù)組首選MapO(n)中是35~45ms對象按字段去重/需要鍵值映射對象鍵值O(n)低是50~70ms簡單場景注意鍵名陷阱排序相鄰O(n log n)高排序拷貝否120~180ms不要求順序數(shù)據(jù)非海量filterindexOfO(n2)中是5萬約1.5s只適合幾百到幾千的小數(shù)組表格里的耗時是我個人環(huán)境的結(jié)果不代表所有瀏覽器但時間復雜度是確定的。你在自己機器上跑一遍就能驗證這個數(shù)量級。5. 實戰(zhàn)案例百萬級日志按用戶去重的完整方案5.1 需求描述與踩坑案例一個真實場景某天我需要處理 100 萬條登錄日志每條 log 是一個對象包含 uid、time、device 等字段。業(yè)務(wù)要求按 uid 去重并且保留每個 uid 最新的一條日志。數(shù)據(jù)量百萬級如果寫雙重循環(huán)或者 filter indexOf頁面或者 Node 腳本基本就廢了。一開始同事用 sort 按時間倒序排然后 filter 相鄰 uid 去重logs.sort((a, b) Date.parse(b.time) - Date.parse(a.time)); const result logs.filter((item, i) i 0 || item.uid ! logs[i - 1].uid);這個方案在 100 萬條數(shù)據(jù)下大約跑了 1 秒多看起來還行但它改變了原數(shù)組順序而且如果 uid 是數(shù)字和字符串混合判斷item.uid ! logs[i - 1].uid就會把123和123當成不同用戶。我們線上就因為這個踩了坑。5.2 高效實現(xiàn)與關(guān)鍵代碼最穩(wěn)的方案是直接一遍 Map邊遍歷邊比較時間保留最新記錄。時間復雜度 O(n)也不會被 uid 類型混合影響const map new Map(); for (const log of logs) { const uid String(log.uid); // 統(tǒng)一字符串 key避免 123 和 123 分離 const old map.get(uid); if (!old || Date.parse(log.time) Date.parse(old.time)) { map.set(uid, log); } } const result [...map.values()];如果不想每次比較都重新 Date.parse可以先預處理一個小結(jié)構(gòu)把日志時間轉(zhuǎn)成時間戳再進 Mapconst map new Map(); for (let i 0; i logs.length; i) { const log logs[i]; const uid String(log.uid); const timestamp Date.parse(log.time); const old map.get(uid); if (!old || timestamp old._ts) { map.set(uid, { ...log, _ts: timestamp }); } } const result [...map.values()].map(({ _ts, ...rest }) rest);第二種做法把 Date.parse 的調(diào)用次數(shù)減少到每個用戶至多兩次時間比較也變成純數(shù)字比較百萬級數(shù)據(jù)實測大約 200~300ms 出結(jié)果。相比排序去重的 1 秒多又快了不少而且完整保留了原始對象只是中間多了一個臨時字段。5.3 結(jié)果和擴展建議按這個方案跑下來100 萬條日志去重后長度大概在 30 萬左右耗時穩(wěn)定在 300ms 以內(nèi)。如果數(shù)據(jù)量繼續(xù)漲到 500 萬、1000 萬我建議直接分片每 20 萬條一批處理配合全局 Map避免單次內(nèi)存占用過高。再大一點可以把任務(wù)丟到 Web Worker 里跑瀏覽器主線程完全不卡。這個案例還說明了一個道理去重的核心不一定是“快速去掉重復項”而是“在去重的同時拿到你真正需要的那條數(shù)據(jù)”。用 Map 可以邊去重邊保留最新的、最早的、或者聚合后的值比單純 Set 更靈活。6. 避坑指南與我的實操建議6.1 你以為去重很純粹NaN、-0、引用類型這些邊角料Set 對 NaN 的處理比 indexOf 強。indexOf 內(nèi)部走的是嚴格相等NaN NaN 為 false所以用 indexOf 去重時多個 NaN 不會被去掉。Set 內(nèi)部用的是 SameValueZero 算法NaN 算同一個值能正常去重。另外-0 和 0 在 Set 里也被認為是同一個值不會產(chǎn)生兩個元素。對于引用類型Set 比較的是引用地址。如果兩個對象結(jié)構(gòu)完全一樣但屬于不同引用Set 不會去重。所以不要試圖用 Set 直接去重對象數(shù)組除非你明確知道對象都是同一個引用。還有一個容易忽略的用 JSON.stringify 配合 Set 做對象去重時如果對象里有函數(shù)、undefined、Symbol這些會被 JSON.stringify 忽略或轉(zhuǎn)成 null可能導致錯誤去重。比如兩個對象一個多了 undefined 字段序列化后居然一樣。這個坑我踩過最后改成手動拼接關(guān)鍵字段才解決。6.2 測試時最容易犯的錯編譯器優(yōu)化、隨機數(shù)干擾做性能對比時很多人直接 console.time 包一下就下結(jié)論結(jié)果被誤導。第一必須保證各方法操作的是同一份數(shù)據(jù)源或等價數(shù)據(jù)不能一個方法改了原數(shù)組后面方法跟著受影響。第二如果方法內(nèi)部創(chuàng)建了新數(shù)組測試時要把新數(shù)組消費掉否則引擎覺得結(jié)果沒被使用可能會做死代碼消除導致結(jié)果虛低。第三隨機數(shù)組每次內(nèi)容不同重復率不同會影響排序去重這類方案的耗時所以要固定數(shù)據(jù)源或多次取平均。我調(diào)試時的做法是先固定生成一份數(shù)組存在變量里每個方法傳入同一個 arr方法內(nèi)部自己拷貝需要的部分保證互不干擾。運行多次取中位數(shù)比單次結(jié)果更可信。另一個容易被忽略的是 JIT 編譯預熱。第一次調(diào)用某個函數(shù)時JS 引擎可能要優(yōu)化編譯所以測試時先跑一遍熱身再用第二遍的結(jié)果作為參考。如果只跑一遍可能會把預熱時間也算進去得到不真實的數(shù)字。6.3 我用了這么久的一點心得文章寫到這里我把個人沉淀的幾個習慣分享出來。第一在大數(shù)據(jù)量場景里不要聰明過頭先無腦用 Set 把功能跑通再用性能分析工具看瓶頸。很多同事一上來就寫個看起來很高效的排序去重結(jié)果數(shù)據(jù)不是數(shù)值類型排序還得寫復雜比較器反而比 Set 更慢。第二去重需求往往伴隨著統(tǒng)計需求比如去重后還要計算每個分類的數(shù)量、保留最近一條記錄等這時候直接用 Map 而不是 Set省得后面再造一遍輪子。第三如果數(shù)據(jù)量已經(jīng)大到 Set 也撐不住除了分片還可以考慮在數(shù)據(jù)源頭做約束比如后端 SQL 里加 DISTINCT或者日志采集時先用更節(jié)省空間的概率結(jié)構(gòu)把明顯重復的丟掉。前端 JS 能做的優(yōu)化有上限不能把壓力全扛在瀏覽器里。我用分片處理后再配合 Web Worker 把任務(wù)丟到后臺線程跑頁面完全不會卡體驗好了很多。最后分享一個小技巧當數(shù)組是百萬級且全是不重復的數(shù)字時可以把數(shù)字轉(zhuǎn)成 Uint32Array 之類的 TypedArray 來省內(nèi)存。但要注意TypedArray 在去重這件事上并不會比普通數(shù)組快很多它主要省內(nèi)存不是省時間。真正要省時間還是要回到哈希表加 O(n) 循環(huán)這條路。希望這份實測記錄能幫你少走點彎路。
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
蜜屁av| www.男人天堂| 国产一区二区三区高清视频| 人人插人人摸人人| 土豪酒店各种姿势玩弄极品幼稚| 天堂国产AV| 色婷婷导航| 国产精品久久久无码AV网站| 日本高清_区二区三区 | 2017人人操,人人摸| 久久午夜色播影院免费高清| 亚洲综合九九| 精品78| 欧美 色 亚洲| 九九热九九| 国产13区| 伊人欧美大香蕉视频| 91少妇人妻| www男人天堂| 日韩久久艹| oumeisetu综合| 激情五月综合| 日韩免费人妻色情网站| 啊啊啊好爽快点啊啊啊嗯嗯| 天天插天天射| 国产精品一二三区福利| 色精品极品| 欧美不卡在线美女| 亚洲天堂另类小说男人| 欧美精品第四五页中文字幕在线观看| 亚洲国产剧情少妇激情| 99re在线观看| 国产精品69久久久久孕妇欧美| 亚洲色图第四色| 破处bbq| 99热线麻豆| 成人精品久久| 亚洲AV成人无码一二三久久| 国产精品久久99日日| 久久亚洲中文字幕视频| 久久AV无码网址| 日本色婷婷| 极品五月天噜噜| 天天色粽合合合合合合合| 人妻少妇蜜桃视频欧美一区| 免费看污网站| 91激情国产| 超碰九区| 精品偷拍13p欧美dodk视频| 18禁精品网站在线看| 日韩精品国产一区二区| 综合激情五月丁香| 自拍视频大全亚洲专媒视频/一区二区三区 | 中国一级操逼视频| 色五月网址| 亚洲91极品| 97精品国产手机| 国产精彩女在线观看视频| 就去色综合| 九九热三级片| 婷婷15月天青娱乐| 91狠狠| Blackedraw视频一区二区| 熟妇人妻精品一区二区视频色欲| 天堂精品| 国产家庭乱伦性爱视频| 人妻少妇蜜桃视频欧美一区| 一区二区三区麻豆| 婷婷丁香五月激情啪啪| 97欧美色| 婷婷丁香五月天亚洲天堂网| 日韩啪啪啪视频| 亚欧成人一级片在线播放| 日韩精品中文字幕一| 97精品国产97久久久久久免费| 在线电影亚洲色图| 九九AV| 一区二区影视| 精品人妻一区二区三区-国产| 欧美视频一区二区三区| 国内精品久久久久影院亚洲| 男人天堂网手机版婷婷| 99在线无码精品秘 入口黑人| 区一在线观看| 成人AV超碰免费在线| 青青草亚洲一区 | 强奸乱伦日韩AV| 99久在线精品99re8a| 蜜乳av一区二区| 蜜臀99999| 9色国产精品一区粉嫩 | 91爱剪切久久| 美女97超碰| 中日韩免费看男女操逼大全| 亚洲国产精品久久久男人的天堂| 中文精品一区二去| 人妻少妇无码| 乱理日韩中文| 中文字幕成人| 日韩操逼性鲍| 99久久99九九99九九九| 六月色色| 国产91乱伦| av草草在线电影| 五月婷视频| 国产日韩手机视频在线| 大香蕉中文网| 99热日| 色综合一区二区三巨| 亚洲另类小说卡通动漫| 亚洲欧美校园| 色呦呦、国产精品| 久9热| 草草影院日本第一页| 夜夜欧美 | 国产AAAAAABBBBB| 一卡二卡三卡| 国产女主播视频在线观看| 六月婷婷激情| 在线观看av区| 超碰成人最新最好看| 2017天天插| 亚洲玖玖爱| 国产精品久久久久久久免牛肉蒲团| 91久久婷婷| 中文字幕av亚洲在线| 日韩一区二区精彩视频| 无码一区免费在线不卡| 国产91亚洲精品一区二区三区| 人妻久久| 久久大黄片| 人人妻人人玩人人澡人人爽| 久久久日本电影| 国产乱不卡| 欧美青青视频| 黑人干亚洲| 欧美精品亚洲精品日韩传电影| 久草热制服丝袜在线观看| 二对二中文字幕。| 国产欧美成人精品| 国产乱码久久久| 国产夫妻性生活视频| 日韩97超碰| 99re久久| 日日插夜夜| 岛国艾薇凹凸视频天堂| 色婷婷影视| 狼天天狼天天大香蕉| 神马久久久久眼| 亚洲精品天天影视综合网 | 中日韩久久人妻一区二区| 超碰中文字幕人妻草一区| 色婷婷成人综合| 久久99精品九九久久久婷婷| 天天天堂影视日韩亚洲91| 情色大香蕉| 国产熟女精品一区二区| 2020中文在线一区二区三区| 日韩无码专区| 99re6国产精品99re| 精品人妻一区二区三区四区| 日韩在线一区高清在线| 亚洲综合激情五月久久| 男人把坤坤插入女人的下体| 大香蕉综合网| 思思热在线观看| 精品久久大胆人体| 国产欧美日本亚洲精品| 97福利视频| 久久骚少妇| 91殴美| 激情专区综合| 夜夜免费视频| 唐山老熟妇露脸啪啪叫| 大香蕉在线视频重口味毛片在线| 97干在线视频| 色九九综合| 欧美精品欧美精品系列| 黄色免费网页无码| 亚洲国产青青| 99re在线| 人妻精品综合中文字幕在线| 久久αⅴ| 91人妻爽爽人人做人人澡| 操老熟女AV| 看免费一级在线播放毛片| 在线观看一卡二卡| 国产久久久9999| 丝袜视频网国产90| 无码日韩人妻av一| 天操天操夜操夜月操月年年操| 人妻少妇精品久久久| 一级成人性爱| 黑人中出21连凳花野真衣| 少妇久久久久| 欧美久久婷| 在线日韩日本亚洲国产| 综合网~91综合网| 操高情无码| 日日黄色三级网站| 中文字幕乱在线伦视频中文字幕乱码在线| 操逼逼中文字幕| 人妻酒店出差被中出免费在线播放| 人人操人人色人人摸| 日韩成人午夜精品久久高潮| 97日韩| 亚洲色图超碰在线| 色y情视频免费看| 一区二区三区无卡视频在线观看| 日本www操操操| 中精品一区二区三区| 日韩av影片在线观看| 久久久啊啊啊| 欧美色图 人妻| 91Chinese在线| 欧美乱伦专区| 97伦综合| 色哟哟AV| 欧美在线啊啊啊| 人人操人人爽人人操人人| 日本久久999| 天天操天天射天天日| 亚洲综合伊人无码久久| 色制服丝袜夫妻av一区| 欧美日韩资源在线| 亚洲欧美精品一区天堂久久 | 欧美人妻精品一区二区| 少妇久久久久久久久| 91丝袜在线视频| 二色av| 96久久久久| 欧美激情亚洲情色| 校园春色宗合网| 超碰亚洲欧美日韩无| 九月丁香婷婷| 激情干在线| 婷婷三区| 成人AV素股で擦久久| 丁香五月av| www.色五月| 久久国产精品91| 99国内精品| 男女打扑克高清网站| 91neishe| 久久久久国产精品喷潮免费观看臀| 国产欧美伊人| 日本免费一区二区不卡 | 久久精品天美| 一本久道在线综合视频| 精品大全99999| 久久久久骚| 亚洲一卡2卡3卡4卡乱码网站| 国产极品馒头逼| 日本孕妇孕交| 婷婷六月色开| 超碰午夜| 91春色| 人妻熟女午夜精品在线| 国产久久久久影院老熟女| 久久香蕉国产线看观看亚洲女人| 91精品少妇搡搡搡| 欧美啪啪啪91| 啊啊啊啊免费视频| 亚洲黑人在线| 天天操天天插| 风间由美日韩欧美久久| 国产一区在线免费播放| 亚洲aV性爱| 9超碰免费| 人妻丝袜美腿中文字幕| 四虎AV在线播放| 欧美天天射| 五月天我淫我色av| 午夜精品久久久久久久久久久久久 | 天天视频网站黄| 欧美性爱日韩性爱| 大香蕉九九| 精品国产一区二区久久| 啊啊啊啊啊,啊啊啊啊好舒服,操我舒服啊啊啊 | 超碰国产情侣自拍网| 台湾成人无码AV| 国产探花精品在线| 激情五月天网站| 78p欧美| 久久人妻一区二区三区高清| 富二代亚洲精品99| 精品美女人人干| 97色碰| 欧美专区日本专区| 国产粉嫩蜜臀av一区二区三区| 九色精品视频导航1| 伊人久久婷婷| 狠狠爱AV| 97在线观看播放视频| 狠狠综合| 色约约一区=区三区| 天堂а√在线最新版在线| 日本免费中文一区二区三区四区| 欧美青青草视频| 丁香九月 婷婷| 精品久久人妻成人网| 国产美女激情| 免费αV在线视频| 欧洲综合视频| 97视频在线播放| 九色PORNY9l原创自拍| 中 文字幕一区二区三四 五 区日 日 骚| 中文字幕AV片| 樱花蜜乳av| 中文字幕片| 日韩三级伊人| 天天日天天射天天干| 男人天堂网站| 久久久久ab| 热久日综合| 91精品久久久久久| 久久久久久久久久9| 操国产逼| 高清不卡国产| 国模私拍一区二区三区神乳| 四虎视频在线观看| 人妻在线视频| 91爱啪| 青娱乐av在线| 欧美日韩不卡a片| 亚洲一区制服诱惑| 日韩一级片| 欧美人妻少妇| 91少妇香蕉久久精品| 综合操逼| 久久老女人| 丝袜喷水在线| 日本日逼视频网| 99热这里只有精品18| 久久久久久中文字幕中文字幕最新| 欧美97爱| 99自拍视频在线| KK色在线影院| 啪啪91| 国产精品99精品视频网站| 日韩探花精品在线视频| 精品久久久久久中文字幕视频免费| yirendaxiangjiashipin| 国产精品无码久久久久2025| 色爽——AV| 久久久98网站免费视频| 2019天天干天天操| a亚洲欧美色欲| 肉丝无码中文高清| 欧美色图亚洲特色| 五月丁香影院| 伊人色综合网电影| 无码高清专| 亚州综合| 激情色图| 熟妇女伦乱视频| 加勒比av网| 91久久午夜无码鲁丝片久久人妻| 激情久久av一区av二区av| 亚洲精品乱码线路中文字幕| 男人的天堂kva| 色悠久久久av| 91美女国产在线| 久久久专区| 日本蜜桃| 精品一二三区女同 | 不卡九肏| 亚洲国男人的天堂| 国产精品3| 日本999精品视频| 96久久科窝| 一本道综合色图| 超碰99在线观看| 欧美在线干| 色五月婷婷久久| 天天综合网~69| 国产在线76页| 九九九久久久久| 91在线丝袜视频| 色天堂在线观看| 97天天在线| 外国91| 亚洲熟伦熟妇AV无码春色| 999久久久免费精品国产牛牛| 精品亚洲天堂| 国产毛片在线| 99久久9| 91亚洲影院综合| 美女91在线观看| 把腿张开老子CAO烂你| 色五月激情综合网| 色婷五月天| 爆乳免费黄网站| 无码男人天堂| 熟女人妻一区二区三区免费看 | 狠狠操狠狠爱| 在线黄色污污网站| 国产乱子伦一区二区三区在线观看| 久久久久亚洲Av无码专区老牛影视 | 色婷婷综合网站| 超碰性爱97| 亚洲熟女乱综合一区二区在线-...亚洲国产日韩欧美一区二区三区,久久久久久精 | 青青草日逼视频| 蜜臀av中文字幕| 欧美性爱日韩高清| 综合网色| 拍拍拍拍大尺度黄色三级片拍拍拍拍拍照| 欲色啪| 九九视频黄色片| 狠狠色婷婷7777久| 国产丸一视频| 97国产超碰| 国产超碰| 很狠操| 男人天堂日日夜夜| 欧美黄色片在线播放| 操逼日韩无码| 日韩99999色| 97操| 青青草原人妻| 黄色视频高清无码网站| 成人在线视频网| 伊人伊人LD| 日韩成人在线性爱视频| 亚洲Av噜噜一区二区三区妖精| 精品九九九九九九| 玖草在线视频| 亚洲一区二区在线观看91| 五月花婷婷| 99热这里只有精品1| 亚洲超碰AV| 欧美午夜熟妇黑人精品91| 99久久网站| 免费亚洲国产精品久久一区| 免费看欧美美女黄色大片| 欧美色图在线视频少妇| 国内三级自拍小视频在线观看 | 久久女同性恋一二区| 999久久久九九九九| 91欧美高清| 女性喷水高潮在线观看| 亚欧无码在线| 丝袜AV一区二区三区| 1024亚洲中文字幕久在线看片你懂的 | 97超碰国产亚洲精品| 91亚洲欧洲| 干B视频伊人网| 2024黄色视频| 精品白丝一区| 小草三级久久观看| 93人人操人人| 91亚洲综合| 精吧天堂| 久久人妻97久久久久久久| 久久久96| 日韩无码第3页| 熟女丝袜视频| 五月婷婷六月色| 狠狠中文字幕| 视频一区二区免费在线| 久久二| 色天堂在线观看| 欧美 传媒 麻豆 日韩 偷拍| 日本精品一区二区中文字幕| 啪啪视频亚洲第一| 人人操人人色网| 美女性91| 天天干夜夜鈤| 免费公开人人操| 麻豆国产第一| 精品高清一区二区三区三州| 日韩一级二级三级免费看完整版国语版| 啪啪啪精品视频| 无码免费精品高清| 天天操天天舔| 亚洲 中文 女同| 91jk色拍| 久热精品在线| 夜夜骑夜夜操| 日韩精品碰碰| 天天爽天天| 色哟哟-国产专区| 性交一区二区在线播放| 草B在线| 国产亚洲精品一区二区三区| 淫荡熟女乱伦网| 91Chinese在线| 色九九九| 久久日韩肥臀| 亚洲精品天堂久久A∨51成人漫| 1禁看欧美黄片免费看| 夜夜操二区| 国厂麻豆77q4| 亚洲av青草久久一区二区| 91精品国产日韩欧美综合| 久久精品国产亚洲AV成人直播| 神马精品视频| 丰满人妻一区| 一个国产在线综合网站| 97天堂| 成人精品水蜜桃久久久久久久| 久久超碰com| 久草视频在线视频在线视频在线观看| 国产欧美伊人| 青青操国产夫妻| 免费1级a做爰片观看| 啊啊啊啊一区| 日韩BBN| 夜色AV无码手机在线影院| 91色鬼| 91狠狠综| 国产熟女少妇一区| 91天堂网| 午夜免费视频1000| 亚洲 欧美 色图| 日韩性爱网址| 91制服丝袜| 国产一级黄色片在线观看| 韩国女主播青草在线| 国产97视频| 久久超碰爱| 国产美女自拍视频| 色哟哟国产精品免费网址| 国产精品久久久久9999小说| 亚洲人妻AV| 欧美色老汉| 亚洲天堂区| 特色a在线上| 精品国产一区二区三区久久久蜜臀 | 97se亚洲综合自| 亚洲天堂男| 玖玖爱免费观看视频| 亚洲色香| 成人性爱高清视频免费看| 校园春色中文字幕AV| 亚洲一区二区精品福利| 亚欧美色图| 蜜桃色色网站视频三区| 国产精品久久久久久久无码AV| 色月天AV导航| 最新中文字幕精品在线| 欧美色图亚洲激情| 91挑色欧美| 久久久成人国产精品无码| 午夜精品久久久久久久久久久久久| 欧美日韩性爱精品| 欧美性爱第1 页| 中亚黄色三级大片| 精品丰满人妻一区二区三区免费观| 秋霞操逼片| 欧美综色欧| surenchaopeng| 丁香五月色情| 精品国产乱码久久久久久口爆网站| 狠狠97| 大香蕉宅男伊人| 婷婷久久五月天| 国产精品人人爽人人做可爱福利| 欧美激情精品久久久| 麻豆天美国美国产| 精品国产自在在线99| 色综合20p| 天天看,天天做| 日本人妻丰满熟妇久久久久久| 欧美成人国产精品| 自拍欧美| 久久一二三四不卡 | 亚洲精品黑丝| 中国小夫妻勾搭露脸淫荡对白| 欧美色偷拍 | 久久久青青草| 性欧美999| 99热线麻豆 | 麻花豆传媒剧国产MV出差| 蜜臀久久99精品久久久久久酒店| 91久热| 久久久精品一区二区| 日韩 欧美 国产 麻豆| 伊人国产av| 五月激情小说| 女优免费一区二区永久| 久久发布国产伦子伦精品| 97天天爽| 97超碰天天爱天天爱| 色婷婷婷五月天激情四射| 怡红院怡春院| 新视频sss国产| 精吧天堂| 日韩一二三区| 翔田千里爆乳巨臀无码| 9999久久久| 久久久久久久强迫| 国产伦乱91| 国产精品视频内谢女人| 校园春色亚洲无码| 91neishe| 久久综合九九| 亚洲男人天堂2019| 97五月天| 在线观看一卡二卡| 18精品一区| 国产乱弄免费在线视频。| 欧美色日本| 精品国产乱码久久久久久久久久毛片| 91丝袜| 久久五月天婷婷丁香中文字幕| 日韩欧美中文日韩欧美色| 欧美激情综合| 91 亚洲情侣偷拍 久久| 青青青在线高清视频在线一二三四区| 欧美v日韩v亚洲v最新在线| 久久久久亚洲av综合波多野制衣| 国产伦乱91| 美女啪欧美一区| 凹凸 69堂 在线播放| 性爱网站一区二区| 吻戏激情性巴克| 超碰欧美在线欧美| 国产乱伦视频污| 成人性爱av| 婷婷丁香五月综合| 天天色怡春院| 亚洲不卡三级手机播放| 婷婷五月天激情小说| 啊啊啊啊操死我了| 九九九精品| 人人操AV| 加勒比东京热五月天天堂网| 奶水 人妻 哺乳 在线| 国内偷拍精品一区二区| 国产亚州高清国产拍精| 亚洲日本男人天堂网| 亚洲91射| 成人aⅴ一区二区三区| 91亚州日韩高清| 91国产丝袜美女| 强奸国产精品视频| 亚洲精品99| 超碰 国产熟女精品一区| 色综合av综合久久| www.婷婷| 国产熟码AV| 亚洲欧综合另类无码一区| 国产精品一区人妻精品阁在线| 东京热av男人的天堂| 屁股久久久久久久久久| 国产99 中文字幕日韩小视频| 人妻天天爽| 精品成人亚洲午夜电影| 国产传媒日本欧美专区| а√天堂资源官网在线资源| 欧美亚男人的天堂| 秋霞一级鲁丝片A片| 任我爽视频在线观看| 网友自拍第1页| 色色色热| 可免费观看的av毛片中日美韩| 色色色网站| 日日爱99| 天天干2019| 日本韩国国产精品一区| 亚洲天堂日本| 在线不卡视频| 密乳视频在线| 天堂综合| 激情五月综合| 欧美天天弄| 动漫片子网站3黄| 亚洲五码一区二区三区| 亚洲色婷婷综合久久久久中文| 午夜精品视频777| 亚洲色图亚洲| 日本超碰色精品| 日日爽夜夜爽| 国产精品久久久久久久AV大片 | 人人摸人人干| 欧美日韩性爱视屏免费看了| 欧美牲| 蜜桃狠狠色伊人亚洲综合 | 啊啊啊啊一区| 日韩欧美成人综合在线| 久久这里只有精品9| 天天躁狠狠躁av| 蜜桃久久综合视频| 操逼片中文| 秋霞一级鲁丝片A片| 国产精品自拍视频| 五月天人妻综合| 亚洲射综合网| 蜜桃视频精品一区二区三区| 91超级碰| 玖玖在线视频| 国产亚洲色婷婷久久99精品91| 成人免费看吃奶视频网站| 国产91 丝袜在线播放00-百度| 欧美天堂亚洲电影院一区在线播放| 亚洲日本韩国极品一区二区| 日韩无码专区| 久久人人看| 中文久久爆乳| 久久久激情| 黄片在线免费在线观看| 一本一道波多野毛片中文在线| 2017大香蕉| 猛猛干| 国产欧美另类久久久精品课程| 人乳av| 人妻少妇久久| 老鸭窝日丰县女人| 九色 蝌蚪 熟女自 | 精品国产乱码久久久久久久| 性高潮久久久久久久久久久| 大逼色网站| 超碰久超碰久| 日本操逼视频免费| 温婉少妇玩3p| 亚洲av无码成人精品国产| 日韩精品国产精品五码一区二区| 蜜臀久久99精品久久久老,,| 最新一二三区视频| 天天看高清麻豆| 日韩大香蕉精品在线视频| 少妇蹲下买菜露大唇0| 91亚洲最新在线| 久久国产AⅤ| 日本高清_区二区三区| 婷婷久久久| 欧美 传媒 麻豆 日韩 偷拍| 亚洲自拍青操视频| 亚洲国产美女久久久久 | 美女91av| 秋霞一级鲁丝片A片| 精品区国产区一区二区三区| 青青网三级视频| 96久久久精品| 天天射天天操天天干天天吃2018 | 日韩懂色网| 美女性91| 日韩av乱伦| 欧美日本天堂| A级在线视频| 日本 欧美 亚中文字幕| 日本国产二线女色| 男人精品天堂一区| 久久伊人在线五区| 亚州男人天堂| 99久久久| 96精品久久久| 性做久久久久久久| 品亲网欧美品亲网| av网站国产主播在线| 色综合五月天| 0755午夜福利视频| 99无码视频| 日韩精品电影| 一级黄色视频网| 综合色拍| 大色综合网| 九九九九一区| 欧洲色| 亚洲 欧美 第一页| 99热婷婷| 亚洲婷婷丁香在线| 色 婷97| 久久精品国产96精品亚洲拳交| 超碰午夜| 六月丁香啪啪啪| 91熟女在线| 91在线页| 一区二区三区亚洲| 夫妻AV网站| 97中文天堂| 国产一级137片内射麻豆| 久久综合久色欧美综合狠狠| 2018色综合天天操| 天天上日日上日韩精品| 丰满搜索结果 -第18页- 久久高清无码 | 五月婷婷激情网| a亚洲欧美色欲| 黄页网站成人免费| GVH-003 母子姦 青木玲-麻豆视频,麻豆视传媒短视频网站入口,麻豆视传媒官网直 | 中国一级操逼视频| 日日夜夜摸| 激情久久日韩精品中文字幕麻豆| 亚洲另类久操网| 久操不卡视频| 艹精品| 浓厚中出中文字幕在线| 欧美骚少妇| 啊好爽受不了无码| 国产综合网站在线播放 | 成人性交午夜免费片| 亚州综合AⅤ| 久久久久一本一区二区青青蜜月| 丁香久久| 婷婷爽人人婷婷爽视频| 久久XX| av婷婷色婷婷色六月| 亚洲砖码砖专无区2023| 中文字幕一区二区三区蜜桃视频| 伊人久久大香线蕉亚洲五月天,青草青草欧美日本一区二区,欧美日产欧美日产国产 | 亚洲男人天堂Av| 日本日日色视频| 久久久久96| 白丝AV| 91大学精品激情戏| 国产91丝袜在线播放蜜月| 97天天操天天干| 一区二区 电影 亚洲| 欧美专区日本专区| 不卡中文字幕aⅴ在线| 久久久久921| 色性综合| 一区二区日韩欧美久久| 色999人与兽| 天堂av2019| 国产久久久久影院老熟女| 日本久久久久久久久久| 一区二区免费电影久久| 高清国产精品无码| 日韩免费性爱视频在线观看| 91美女在线精品视频| 大香蕉92| 91精品国产日韩欧美综合| 911粉嫩人妻| 三上制服丝AV| 欧美人妻制服| 亚洲一区二区中文字幕| 日本韩国一本产品小视频日本韩国一本产品久久久产品小视频日本韩国一本产品久 | 最新精品久久蜜桃| www.av家庭乱伦| 成视频在线观看免费看| 亚洲瓯美色图| 我想要 啊 啊 啊| 激情五月天社区| 久久超碰98| 国产激情视频一区区三区| 亚洲国产高清福利视频| 神马午夜久久久| A片大香蕉在线| 激情婷婷丁香| 亚洲欧美内射| 中文字幕精品资源在线| 国产乱弄免费在线视频。| 日韩av免费一级电影| 久久久久免费少妇| 久久人妻熟女一区二区| 五月天激情网图片| 天天久久久久久| 欧美AB在线观看| 白丝AV| 久久久久久久久久久久久久9999| 九九热三级片| 国模限制级电影| 精品日韩| 国产夜夜艹| 岛国激情视频在线观看| 欧美成人色| 日韩精品 视频一区二区| nuu12国产麻豆精品| 欧美国产伊人久久久久| 欧美后入式| 啊啊啊啊嗯嗯嗯用力好爽| 91在线免费精品视频| 欧美性爱一内片一区二区三区| 欧美97| 和协影院中文字幕三区| 殴美大黄片| www久久国产精品| 性爱AV天堂| 五月香婷婷| 久久性爱视频99| 黑人精品欧美一区二区蜜桃| 九热大香蕉| 国产一级αv免费看片| 97狠狠| 亚洲图片 激情小说| 日本欧美成人片AAAA| 久久精品国产亚洲AV嘿嘿| 欧美色91| 青草视频人妻在线观看| 久久久人体| 玖玖资源综合在线视频| AA级电影三区| 久久久久久十| 日本好吊色视频| 欧美色棕合| 人人扣人人操| 1禁看欧美黄片免费看| 人妻精品视频一区二区三区 | 91偷拍欧美亚洲| 91校园春色长篇| 人妻熟女av国产网站| 亚洲一区中文精品| 欧美九九九九九| 婷婷久久久精品| 亚洲综合射| 精品人妻视频一区二区三区蜜桃视频| 激情色色| JULIA一区二区三区在线播放| 操B视频日韩无码| 国产粉嫩蜜臀av一区二区三区| 蜜臀一区二区三区亚洲最新章节在线观看 - 高清蜜臀一区二区三区亚洲全集播放 | 中文字幕第2页| 青青草中出视频| 大屁股国产在线视频| 九一国产精品| 加勒比久久av| 在线电影亚洲色图| 五月天日日操夜夜操| 人妻少妇精品无码专区二区密桃| 乱人乱色一区二区三区免费| 97精品97久久| 久久一二三四五六七八九区| 色哟哟av| 久操免费在线| 一级婬片120分钟试看| 成人性爱免费播放| 国产精品午夜福利亚洲综合网| 国产精品黑人一区二区三区| 人人看黄色视频| 日韩人妻播放| 午夜免费视频1000| 久热9| 国产人妻一区二区三区欧美毛片| 啊啊啊啊啊啊啊啊要喷了| 尤物视频新赏网鲜网色诱网| 国产精品成久久久久午夜午夜| 国产精品不卡一区二区电影| 操婢日韩| 五月丁香色婷婷| 亚洲天堂自拍| 日韩精品午夜操呦呦不卡影院| 亚洲熟女综合一区二区| 日本精品一级二级三级| 黄片在线免费在线观看| 有码免费观看| 国产国产亚洲一二三久久| 精品久久无码午夜福利| 屁屁影院一区二区三区国产| 久9久| 国产午夜精品一区二区三区牛牛| 色视频蜜乳| 色噜噜综合在线| 91路www| 亚洲精品久久久久毛片A片拉屎| 免费伦费视频在线观看| 91久热这里只有精品| 四虎精品永久在线观看| 天天色播亚洲综合网站| 欧美熟女妇同| 青娱乐黄色录像| 日韩成人性爱电影在线播放| 自拍欧美| 在线观看亚洲成人精品| 国产精品情侣啪啪| 99久草| 激情五月天综合网| 99这里只有精品| 黄色高清无码无码破解免费暗网 | 亚州综合色| 麻豆国产尤物AV| 成人AV在线网站| 国产成人无码久久精品| 人妻少妇精品视频一区二区三区| 家庭乱伦性爱av| 日韩精品国模| 男人的天堂一区三区| 精品二区三四区五电影 | www.狠狠干.coom| 久九色| 日韩人妻精品久久久久| 91视频综合| 91麻豆天美国产| 国产精品毛片?v一区二区三区 | 午夜福利在线合集| 人人操人人uiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii | 天天性射网| 天天爽爽爽爽| 亚洲欧美成人网站AAA| 啊好爽受不了无码| 日韩精品黄片免费观看| 伊人性在线视频| 在线女人91| 亚洲砖码砖专无区2023| 亚洲在线A| 久久大香蕉手机高清| 色狠狠 - 百度| 欧美黑人极品高潮喷吹熟女黑人性暴力日韩在线欧美极品一区二区 | 久久这里只有精品9| 日日夜夜骚| 日韩少妇一区二区三区| 91色狼| 久久r精品| 欧美有码亚洲中文字幕一区二区三区四区| 欧美偷偷网| 99re8超碰| 激情五月婷婷综合| 亚洲AV无码翔田千里网站| 久肏视频字幕| 亚州欧美总和| 蜜色网色哟哟| 婷婷色导航| 少妇高潮对白在线观看| 国产肏逼网站| 国产乱子伦一区二区三区在线观看| 欧美黑人极品高潮喷吹熟女黑人性暴力日韩在线欧美极品一区二区老师 | 久久精品六区| 国产农村妇女精品一二区| 中文字幕成人| 国产做?爰片久久毛片?片美国| 欧美探花网| 日日夜夜精品| 免费AV中文网在线观看| 人妻精品一区二区| 久久精品噜噜噜成人看免欧美大片| 九九色逼| 乱伦a片视频| 国产成久久综合片| 欲香欲色综合天天伊人| 精品人妻一区春色| 亚州宗合另类| 91性高潮久久久久久久久| 国产黄片精品在线| 日韩免费看在线黄色片| 天久久久噜噜噜久久国产精品爽爽 | 97se亚洲综合自| 日本一天色道久久久精品视频| 五月丁香网站| 精品久久久亚洲AV成人网站| 久久人人爽爽人人爽人人片αV| 九久9精品| 成人AV在线网站| 国产精品久久久久久久久久久久久久久久 | 人人操人人操草草| 亚洲一区二区三区在线激情| 欧洲色综合| 97久久国产亚洲精品超碰热| 91日日| 国产熟妇一区二区| 91在线限制级| 一区二区三区日韩欧美| 青青草自拍视频在线播放| 用力操死我| 日日日啊啊啊| 最新精品久久蜜桃 | 大香蕉综合| 99综合自拍| 国产后入内射| 无码九九九九| 人妻激情视频| 9Ⅰ老熟女| 日韩99精品视频综合区| 在线国产福利网址导航| 色在线亚洲视频www| 久久一区二区三区入口| 密桃99999| 久插不卡| 校园春色美腿丝袜| 精品无码秘 人妻一区二区| 搞中出久久| 日本一本一区二区三区四区五区欧美日韩中文字幕 | 亚洲区小说| 免费成人自拍视频在线| 韩国免费播放一级毛片| 成人a大片在线观看| 久久伊人大香蕉| 91亚洲影院综合| 国产熟女自拍| 看免费一级在线播放毛片| 黄色一区二区秘书性感| 六九九九| 久久精品91| 亚洲国产一级黄色视频| 欧美刺激色黄片免费看| 九一综合精品视品av| 97国产中文| 色屁屁影院www国产| 国产91美女高潮| 最新9久久久9免费视频| 91无遮挡| 婷婷五月av| 超碰97综合网| 亚洲制服欧美另类内射| 日韩精品9999| 成人小说另类在线| 婷婷久草一区二区三区| 超碰69| 黄页视频网站野外| 超碰久在线天天做| 家庭乱伦性爱av| 大乔未久88一区| 啪啪啪精品视频| 97超碰色中文字幕| 2019久久久久久久久福利| 综合网欧| 91人妻中文| 男女性扦B| 日韩精品永久在线观看| 亚州久久9| 欧美十八禁视频| 91熟女综合| 国产h片在线观看视频| WWW美腿丝袜香蕉中文| 国产人妻天天干精品| 麻豆一区二区AV天美| 久久香蕉国产传媒一区剧情天美| 久九九九九九九九热| 五月丁香六月婷综合成人综合| 蜜臀99久| 女人妻一区| AV和黑人在线播放| 亚洲在线观看| 青青草自拍视频在线播放| 欧美日本一区二区a人| 97综合激情| 国产一区二区三区,在线观看观看| 无码在线亚洲| 欧美劲爆第一页| 长长久久曰曰夜夜成人网| 操高情无码| 啪啪资源网| 家庭乱伦网站国产| 成人免费福利在线观看| 黄在线| 婷婷深爱五月| 五月婷色| 日韩在线视频1234| 高清不卡一二三区视频......| 久热色情精品| 超碰97网址| 亚洲人91| 欧美热图99| 欧美激情激情xxxx欧美专区| 色99999| 亚洲成人免费中文字幕| a级理论午夜日本| 在线视频免费播放一区| 97天天在线| 亚洲精品一区中文字幕乱码| 免费亚洲黄色视频在线观看 | 在线观看免费视频国产| 国产无码精品高清| 国产v片在线免费观看| 97国产精品视频| 欧美性爱日韩高清| 久久精品国产亚洲AV高清演员表 | 天天综合欧美综合| 最新中文字幕av| 日韩色女精品| 国产热av| 好涩综合| 亚洲av无码国产精品字幕| 国产精品视频麻豆入口| 国产亚洲日本精品在线| 影音先锋国产精品| 丝袜美腿欧美| 亚洲色图 图片| 骚货操死你| ji熟女.com|