某人將如何計算列表中唯一項目的數量?如何統計列表中的唯一項目?
舉個例子說我有{1,3,4,4,1,3},我想得到數字3代表列表中唯一項的數量(即| A | = 3,如果A = {1,3,4})。什麼算法會有人用這個?
我已經tryied雙循環:
for firstItem to lastItem
currentItem=a
for currentItem to lastItem
currentItem=b
if a==b then numberOfDublicates++
uniqueItems=numberOfItems-numberOfDublicates
,因爲它計數重複的次數比實際需要的那不起作用。隨着年初的例子那就是:
- 對於第一循環將數+1副本列表中的號碼1。
- 對於第二個循環它將在列表中爲數字3計數+2個重複。
- 對於第三循環將數+1的重複再次3號(超量的最後一個「3」)和 有哪裏出了問題的用武之地。
如何解決這個任何想法?
你可以比'O(n logn)'做得更好。 – SLaks 2011-03-14 14:20:01