我需要創建一個數據結構,可以通過字符串鍵或它們的序號來訪問元素。簡單而有效的方法來存儲可以通過密鑰或序數C++訪問的數據
該類當前使用包含字符串鍵和指向任何元素的指針的節點數組。這允許O(n)循環,或O(1)通過序號獲取元素,但是我發現通過鍵找到元素的唯一方法是執行O(n)循環並比較鍵直到找到我想要的,當有1000多個元素時,這是很慢的。有沒有辦法使用鍵來引用指針,還是我運氣不好?
編輯:通過序號沒有那麼重要O(n)循環。這將被用作一個基礎結構,它將被繼承用於其他方式,例如,如果它是一個可繪製對象的結構,我希望能夠在一個循環中繪製所有這些結構
這似乎是現在最有效的時間和空間方式,感謝您的幫助 – Andrew 2011-05-06 15:09:34
@Andrew:通常值得檢查處理您當前的容器是否在引入新容器之前解決了問題。 – 2011-05-07 00:02:28