G.CLT.01 非必要情况下,不要使用LinkedList,而用VecVecDeque代替

【级别】 建议

【描述】

一般情况下,有 VecVecDeque 性能更好。LinkedList 存在内存浪费,缓存局部性(Cache Locality)比较差,无法更好地利用CPU 缓存机制,性能很差。

只有在有大量的 列表 拆分 和 合并 操作时,才真正需要链表,因为链表允许你只需操作指针而非复制数据来完成这些操作。

【Lint 检测】

lint nameClippy 可检测Rustc 可检测Lint Grouplevel
linkedlistyesnopedanticallow

该 lint 对应 clippy.toml 配置项:

# 如果函数是被导出的 API,则该 lint 不会被触发,是防止 lint 建议对 API 有破坏性的改变。默认为 true
avoid-breaking-exported-api=true