数据结构学习笔记
来源:互联网 发布:home软件下载 编辑:程序博客网 时间:2024/06/04 18:25
教材:《数据结构教程》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>&?
- 数据结构学习笔记
- 数据结构学习笔记(一)
- 数据结构学习笔记--前言
- 数据结构学习笔记--迷宫
- 数据结构学习笔记
- Java数据结构 学习笔记
- 数据结构学习笔记
- 数据结构学习笔记
- 数据结构学习笔记
- 数据结构学习笔记1
- 数据结构学习笔记一
- 数据结构学习笔记二
- 数据结构学习笔记三
- 数据结构学习笔记(1)
- 《数据结构》学习笔记12
- 《数据结构》学习笔记 16
- 数据结构学习笔记 --- 前言
- 数据结构学习笔记
- static class 静态类(Java)
- 十道海量数据处理面试题
- HashMap和HashSet的区别
- Java内存与垃圾回收调优
- 物联网开源软件
- 数据结构学习笔记
- 剖析cmd >file 2>&1 和 cmd >file 2>file 的差别
- javascript常用对象的源码--Array用法
- Maximum Depth of Binary Tree
- 重定向详解
- Android之Adapter用法总结
- axis1.4+eclipse+tomcat7.0创建简单webservice(大神绕道啊啊)
- Linux下如何编译并运行C程序
- Android连接蓝牙打印机实现PDF文档的打印