开启掘金成长之旅!这是我参与「掘金日新计划 · 12 月更文挑战」的第二十二天,点击查看活动详情
前言:
1.数据结构(Data Structure) 是数据的组织结构,用来组织、存储数据。算法(Algorithm) 就是解决问题的方法或者过程。
2.数据结构分为逻辑结构和物理结构。逻辑结构分为集合结构、线性结构、树形结构、图形结构;物理结构分为顺序存储结构、链式存储结构。
树
-
数组存储方式
-
优点:通过下标方式访问元素,速度快。对于有序数组,可使用二分查找提高检索速度。
-
缺点:如果要检索具体某个值,或者插入值(按一定顺序)会整体移动,效率较低
-
-
链式存储方式
-
优点:在一定程度上对数组存储方式有优化(比如:插入一个数值节点,只需要将插 入节点,链接到链表中即可, 删除效率也很好)。
-
缺点:在进行检索时,效率仍然较低,比如(检索某个值,==需要从头节点开始遍历==)
插入 6 :
-
-
树存储方式
-
能提高数据存储,读取的效率, 比如利用 二叉排序树(Binary Sort Tree),既可以保证数据的检索速度,同时也可以保证数据的插入,删除,修改的速度。
-
小于根节点的放置左边,大于的放在右边
-
树示意图
树的常用术语
- 节点
- 根节点
- 父节点
- 子节点
- 叶子节点(没有子节点的节点)
- 节点的权(节点值)
- 层
- 路径(从root节点找到该节点的路线)
- 子树
- 树的高度(最大的层数)
- 森林:多棵子树构成森林