3
A
回答
2
1
爲INT創建一個對象模型,中創建一個Count屬性。創建一個擴展Vector集合的SortedVector集合。每次發生整數時,如果它不存在,則將其添加到向量中。否則,找到它,更新count屬性+ = 1,然後在Vector中調用Collections.sort(this)。
1
你知道號碼的範圍是多少?如果是這樣,那麼使用數組可能是有意義的。例如,如果我知道數字的範圍在0到10之間,那麼我會創建一個大小爲10的數組。該數組中的每個元素都會計算我看過給定數字的次數。然後,你只需要記住最常見的號碼。
例如
array[10];
freq_index = -1;
freq_count = -1;
readVal(int n){
array[n]+=1;
if array[n] > freq_count
freq_index = n;
freq_count = array[n];
}
當然,如果數字的分佈是稀疏的,這種方法是不好的。
我想嘗試一個優先級隊列。
3
2
public class MyData implements Comparable<MyData>{
public int frequency = 0;
public Integer data;
@Override
public int compareTo(MyData that) {
return this.frequency - that.frequency;
}
}
有它存儲在PriorityQueue
相關問題
- 1. 緩存和保存頻繁更新的數據
- 2. 適當的數據結構來存儲C++中的最後n個元素
- 3. 如何找到數組的模式(最頻繁的元素)?
- 4. 在掩碼數組中找到最頻繁的元素
- 5. 紅寶石陣列最頻繁元素的數量
- 6. C - 查找char數組中最頻繁的元素
- 7. .NET緩存:元素的最大數量
- 8. 數據模型結構變化頻繁:最好的工作方式
- 9. C++內存緩存數據結構
- 10. 在使用表格時選擇數據框中最頻繁的元素
- 11. MVC緩存會非常頻繁改變
- 12. CakePHP Apc緩存失效太頻繁
- 13. 在Java中的ArrayList中查找最常見/頻繁的元素
- 14. 存儲特定結構化數據的最佳數據結構
- 15. 高效計算數據流中頻繁和高位元素
- 16. 如何獲取列表中最頻繁的元素?
- 17. Linq,IQueryable獲得最頻繁的元素對象
- 18. 獲取R中因子中最頻繁的元素R
- 19. C++在地圖中最頻繁的元素
- 20. 有效緩存大數據結構
- 21. 緩存數據結構設計
- 22. 訪問數據結構中的元素
- 23. 元素週期表的數據結構
- 24. 頻繁變化的數據
- 25. PyCharm頻繁凍結
- 26. 在ASP.Net緩存中存儲頻繁的搜索字符串及其結果
- 27. 數據結構/檢索元素父
- 28. 查找數組中最頻繁的數字,內存有限
- 29. 樹結構:找到父元素的元素並保存鏈的最佳方法
- 30. 創建一個數據結構來比較300個元素
有趣的部分,這是如何處理這些號碼s不在當前最高N緩存中。是否僅需要在緩存中存儲流中固定數量的不同整數? – Joel