0%
数据结构(线性结构/树形结构/图结构)
- 数组 array
- 链表(动态数据结构)
- 散列表 hashtable
- 栈 stack(后进先出)(系统栈-子函数)
- 队列 queue(先进先出)(循环队列,对普通队列进行优化)
- 堆 heap
- 树 tree
- 二叉树 binary tree(动态数据结构)
- 二分搜索树 binary search tree(每个节点的值大于其左子树所有节点的值,小于其右子树说有节点的值)(存储的元素必须有可比较性)
- 集合 set (每个元素只能存在一次) (去重)(使用二分搜索树实现)
- 映射 map (key value)
- 优先队列 Priority Queue (使用堆可以高效实现)
- 二叉堆 binary heap (使用树实现的堆,是一棵完全二叉树)(最大堆父节点的值大于子节点的值)(最小堆)(用数组可以实现)
- 满二叉树
- 完全二叉树
- 图
查找算法
- 简单查找
- 二分查找
排序算法
- 选择排序(selection sort)
- 插入排序(insertion sort)
- 希尔排序(shell sort)
- 快速排序(Quick sort) 平均时间复杂度 O(nlogn),最坏时间复杂度 O(n*n)
- 归并排序(merge sort) 平均时间复杂度 O(nlogn),采用二分法,空间复杂度 O(n)
- 堆排序(heap sort)
- 冒泡排序(bubble sort)
- 计数排序(counting sort)
坚持技术分享,您的支持将鼓励我继续创作!
微信支付
支付宝