数据结构学习总结(树和二叉树)

数据结构总结:

算法+数据结构=程序(算法是解决问题的方法和步骤,数据结构是管理数据的一种机制)

批量同类的数据管理的机制,即如何管理和组织数据结构,在什么样的数据结构上采用什么样的算法。

研究数据的逻辑结构(即元素间的逻辑关系),物理结构(存储方式),基于上面2个方面的各种操作(插入、移除、查找、排序)的实现方式。

1、(1)栈:先进后出  (2)队列:先进先出   (3)树:一对多(4):多对多

2、存储方式(1)顺序存储(2)链式存储:也是一对一,每个数据的性质都是一样的,每个数据中都唯一的存放着下一个数据的                                  地址

                    (3)索引存储   

3、链表 :头指针:是一个指针变量,保存第一个结点在内存空间的首地址

                头结点:是一个与结点类型不一样的特殊对象,是另一种结构类型,数据域是一些体现链表整体的一些属性,如表长,指针域至少一个用于保存第一个结点的地址,也就是头指针。

             利用头结点在内存空间的地址就可以代表整个地址,即代表一个有头结点的地址。(叫做有头结点的链表)

             没有头结点的的链表可以用一个指针变量来存储链表第一个结构体的地址叫头指针(头指针链表)

             单向链表:指针域指针直接指向下一个结构体

             双向链表:双向链表的指针域,第一个值存下一个结构体的地址,第二个值存上一个结构体的地址

             循环链表:单向链表的最后一个结构体存第一个结构体的地址,双项链表最后一个结构体的指针域第一个值存第一个结构体的地址,第二个指针域存的是上一个结构体的地址。第一个节点的指针域的第一个指针(next指针域)存第二个节点的地址,第二个指针(prev指针域)存最后一个结点的地址。

程序:

            

猜你喜欢

转载自blog.csdn.net/woshisunwen/article/details/82429777