数据结构学习笔记 2015-04-16 21:09 45人阅读 评论(0) 收藏

教材:《数据结构教程》C++版 陈明 编著

一、重要知识点

1、数据结构概念

          数据结构即数据的组织方式,包括以下三方面的内容:逻辑结构(即数据之间的关系),存储结构(即数据的存储方式),数据的运算操作。

2、数据存储方式:顺序存储方式(多以数组或动态数组实现),链式存储方式(指针操作),散列表(散列函数),索引(可能会涉及到前几种存储方式)。

3、线性表可分为顺序线性表和链式线性表

顺序线性表:顺序存储,需要连续储存空间,插入或删除过程繁锁;

链式线性表:不需要连续储存空间,插入或删除方便,不能随机读取数据;

        1)头指针指向第一个储存单元或头结点(头结点指向第一个存储单元),头指针的数据不一定要储存数据,当然,也可以存放链表长度等信息。

        2)建立独立结点类方便其他数据结构调用。

4、1)树的概念:树是由根结点和若干棵子树构成的(递归定义,这就意味着二叉树的很多操作都可以用递归的方法实现);特点:除根结点外的其他结点有且仅有一个前驱结点,每个结点可以有零个或多个后继结点。

      2)满二叉树:最后一层都是叶子结点,其他各层的结点都有左、右子树的二叉树。

      3)完全二叉树:一棵二叉树最多只有最后两层有度数小于2的结点,且最下层的结点都集中在该层的最左边的若干位置上。

      4)满二叉树是完全二叉树的特例。

      5)度为2的树和二叉树是有区别的:度为2的树有两个分支,没有左右之分;但二叉树是有左右之分的,且左右分支不能交换。

      6)根结点为第一层,二叉树的深度为二叉树的最大层数。

      7)二叉查找树:左子树上所有值都小于根结点,右子树上所有值都大于根结点。

二、答疑解惑

1、P63  Delete和insert操作返回值为什么是AbstractList<T>& 而非LinearList<T>&?

原文地址:https://www.cnblogs.com/zclzqbx/p/4687158.html