我有一些代码,我注意到迭代通过ArrayList的进度随着时间的推移变得非常慢.似乎导致问题的代码如下:
public boolean isWordOfficial(String word){
return this.wordList.get(this.stringWordList.indexOf(word)).isWordOfficial();
}
Run Code Online (Sandbox Code Playgroud)
在访问两个arraylists方面,我不知道这些代码有什么问题吗?
我并不确切地说,为什么,或者你的ArrayList性能变得太慢,但是从快速浏览一下您的用例,您正在执行以下操作:
word,查找它stringWordList,并返回数字索引wordList此索引中包含的单词并返回它这种使用模式最好由a提供Map,其中键是输入word,可能对应于一个条目stringWordList,输出另一个单词,来自wordList.
O(1)与O(N)列表中的查找相比,地图查找将是一个操作.
| 归档时间: |
|
| 查看次数: |
115 次 |
| 最近记录: |