数据结构是计算机存储、组织数据的方式。
数据结构是指相互之间存在一种或多种特定关系的数据元素的集合。
通常情况下,精心选择的数据结构可以带来更高的运行或者存储效率。
数据结构往往同高效的检索算法和索引技术有关。
研究对象:一.数据的逻辑结构:指反映数据元素之间的逻辑关系的数据结构,其中的逻辑关系是指数据元素之间的前后件关系,而与他们在计算机中的存储位置无关。
逻辑结构包括:
1.集合结构:数据结构中的元素之间除了"同属一个集合" 的相互关系外,别无其他关系。
2.线性结构:数据结构中的元素存在一对一的相互关系。
3.树形结构:数据结构中的元素存在一对多的相互关系。
4.图形结构:数据结构中的元素存在多对多的相互关系。
在数据结构问题中:有向图的定义是:有向图在图中的边是有方向的,表现出来就是有个箭头指示方向,节点只能单向通信或传递消息,相当于单行道;无向图的定义是:无向图边没方向是双向的,边连接的两个节点有通路可以双向通信,类似于双行道。
从树的定义可知,除根结点外,树中的每个结点都有唯一的一个双亲结点。
根据这一特性,可用一组连续的存储空间存储树中的各结点。
树中的结点除保存结点本身的信息之外,还要保存其双亲结点在数组中的位置,树的这种表示法称为双亲表示法。
如果没有父节点就用负1或者null,或者用其他的来区分。
构建树,就是从叶子节点不断找父节点的过程。