2011-03-23 88 views
0

假設有一個排列列表。每個排列都是一長串整數。讓我們考慮一個示例permutatation並將其稱爲samplePerm。我的任務是找出列表是否包含samplePerm。我認爲使用散列函數技術是個好主意。因此,排列非常大(超過10000個項目),多項式變體(如字符串)是無用的。有人知道最佳做法嗎?整數序列的散列函數

更新: 整數排序的順序是一個關鍵標準!所有排列由相同的數字組成

+0

如果這是作業,請標記爲這樣。 – 2011-03-23 19:03:00

+0

那不是。這是我的程序的優化想法... – Dmitry 2011-03-23 19:05:16

+0

排列順序是否重要? – 2011-03-23 19:09:42

回答

0

解決方案將整數分成組,並通過連接整數將每個組視爲一個字符串。之後,可以對每個組應用散列函數(請參閱算法的java String.hashCode())。最後可以添加結果數字。最後的活動可能會提供碰撞,所以它是一個需要更好的主意的地方:)