作者wind681201 (阿風~~)
看板Ajax
標題[問題] 陣列比對
時間Fri Apr 10 23:14:39 2015
我有一個字串陣列
var ary = ["a,a,a;b,b,b",
"c,c,c;d,d,d",
"e,e,e;f,f,f"
.....]
而我裡面又還要分成二種陣列
一個是用分號分,一個是字逗號分
而且要比對
例:
a,a,a陣列要比對c,c,c及e,e,e陣列
b,b,b陣列要比對d,d,d及f,f,f陣列
再來a,a,a要比對d,d,d f,f,f
再來c,c,c要比對b,b,b f,f,f
當然這個字串陣列是不等的,有比較有率的方式嗎?
而且比對到有相同的,就要回傳ary是哪一個index發生重復
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 220.135.124.103
※ 文章網址: https://www.ptt.cc/bbs/Ajax/M.1428678882.A.460.html
推 swallowcc: 這個陣列的來源是? 04/11 21:00
→ mmis1000: 你的相同的定義是? 04/11 21:20
推 Panasonic: 效率喔...可能要先排序然後run time用二分搜尋 04/12 18:33
→ mmis1000: 開一個dict,用a,a,a當key,紀錄它是在哪一個index上 04/12 18:42
→ mmis1000: 然後如果下次又爬到a,a,a,就知道上一個a,a,a的位置了 04/12 18:43
→ mmis1000: 這樣只要爬過一輪,搜索就結束了 04/12 18:52
→ mmis1000: 好吧,測試起來,用array似乎比較快 04/13 02:54
→ mmis1000: 但那是數據順序一致的前提,正常的話還是dict快 04/13 02:59