数据结构和算法

描述

主要是在本站的文章中涉及到的一些数据结构

线性数据结构

非线性数据结构

算法性能速查表

常见数据结构时间复杂度空间复杂度
静态组平均意义下最坏情况
动态组平均意义下最坏情况
单/双链表平均意义下最坏情况
跳表平均意义下最坏情况
栈平均意义下最坏情况
队列平均意义下最坏情况
哈希表平均意义下最坏情况
二叉搜索树平均意义下最坏情况
自平衡的二叉搜索树平均意义下最坏情况
优先队列平均意义下最坏情况
字典树 (字符串的平均长度为 k)平均意义下最坏情况
KD树平均意义下最坏情况
常见操作根据下标查找元素根据数值查找下标插入元素删除元素找最小/最大根据下标查找元素根据数值查找下标插入元素删除元素找最小/最大
静态组O(1)O(n)--O(n)O(1)O(n)--O(n)
动态组O(1)O(n)O(n)O(n)O(n)O(1)O(n)O(n)O(n)O(n)
单/双链表O(n)O(n)O(1)O(1)O(n)O(n)O(n)O(1)O(1)O(n)
跳表O(log n)O(log n)O(log n)O(log n)O(n)O(n)O(n)O(log n)O(log n)O(n log n)
栈O(n)O(n)O(1)O(1)O(n)O(n)O(n)O(1)O(1)O(n)
队列O(n)O(n)O(1)O(1)O(n)O(n)O(n)O(1)O(1)O(n)
哈希表-O(1)O(1)O(1)O(n)-O(n)O(n)O(n)O(n)
二叉搜索树O(log n)O(log n)O(log n)O(log n)O(log n)O(n)O(n)O(n)O(n)O(n)
自平衡的二叉搜索树O(log n)O(log n)O(log n)O(log n)O(log n)O(n)O(n)O(n)O(n)O(n)
优先队列-O(n)O(log n)O(log n)O(1)-O(n)O(log n)O(log n)O(1)
字典树 (字符串的平均长度为 k)-O(k)O(k)O(k)O(nk)-O(nk)O(nk)O(nk)O(nk)
KD树O(log n)O(log n)O(log n)O(log n)O(n)O(n)O(n)O(n)O(n)O(n)

最后修改 October 16, 2024: update content (46c793e)