2014-02-12 28 views
0

給定一組記錄(票號,人名),票號。是獨特的。找到擁有最多票數的人。訪談 - 找到彩票最多的人

我認爲哈希圖可能是這個問題的一種方法,但這裏票號。那麼,我們如何才能獲得彩票數量最多的人?我們不需要另一種結構來保存關於每個人的信息。在初始問題中,我們不能將人名稱作爲散列表的關鍵,因爲名稱不能是唯一的。

任何想法我們該怎麼做?

+0

我沒有reallyget你的問題。爲什麼不只是運行一個循環,並掃描每個元素,看看哪個元素最具特徵 –

+0

@DakshShah這是一種非常天真的方法。這裏的訪問者可能看到的是這樣的一種方式,比那種方式更好 – user2916886

回答

0

假設您有某種方式來唯一標識一個人(人名必須是唯一的),您可以將人員名稱映射到一組票。那麼你只需要遍歷該地圖來找出哪個集合是最大的。

如果這只是一次性計算,您可以使用人名的地圖來表示當前的門票數量,從而消除了收集的需要。

注意,如果人的名字是不是唯一的,有沒有說是否「Ĵ史密斯」帶票1的方式是同一個人,而「J史密斯」帶票2

+0

這就是我也在帖子中說過,名字不可能是一個關鍵,因爲它不可能是唯一的。我想知道的是,有沒有比基本迭代更好的方法之一。曾經我認爲hashmap可能是但我無法達到使用該解決方案的解決方案 – user2916886

+0

我不確定如果沒有通過名稱或其他屬性唯一標識某個人的方式,這是如何實現的。如果所有人都具有相同的姓名(例如),那只是一個字符串屬性,並且無法判斷出票1的「A」和出票2的「A」是同一人還是不同的人。請參閱編輯以使此問題更清楚。 – Krease