共用方式為


低效的 LinkedList 遍歷

本文說明周遊 LinkedList<T> 集合時的效能深入解析。

原因

遍歷 a LinkedList<T> 以尋找元素會導致效能變慢。

效能深入解析描述

LinkedList<T> 不提供 O(1) 按索引存取元素。 每次遍歷清單,尤其是在迴圈或巢狀迴圈中,都會導致 O(n) 時間複雜度。 這可能會導致在頻繁搜尋項目或在大型鍊錶中搜尋時效能顯著下降。

可能的話,請考慮使用 List<T>Dictionary<TKey,TValue>List<T> 提供 O(1) 索引存取,並提供 Dictionary<TKey, TValue> O(1) 索引鍵查閱。 與遍歷鍊錶相比,這些替代方案對於大多數存取模式通常更有效率。

如何調查警告

在 [CPU 使用率] 工具中,按一下 [檢視原始程式碼 ] 以尋找使用周遊的位置 LinkedList<T> 。 可能的話,請重構以使用不同的集合類型,為您的案例提供更快的存取。

另請參閱

集合和資料結構