从各个数据结构名词集锦中作为初识庐山求全貌的入口,但求能够在不求甚解中求得清晰的学习脉络。
第一: 总的划分
1> 线性数据结构:
线性表:n个数据元素组成的有序序列,每个元素本身是非结构的原子类型。
举例:(A,B,C,D)
广义表:是顺序表的一种扩充,n个数据元素组成的有序序列,但是每个数据元素本身可以具有某种结构。
举例: (A,(B,C,D),F,(E,G))
2> 非线性数据结构:
树:数据元素之间具有一对多关系的结构,即除了根节点以外的节点只有一个前驱,可以有零之多个后继节点。
图:数据元素之间具有多对多关系的结构,即每个节点可以有多个前驱和多个后继,任意两个元素都可以相邻。
第二: 具体介绍
1>:线性表
顺序表:连续的存储单元存储线性表的数据元素,常用数组实现。
链 表:一组任意的存储单元存储线性表的数据元素。常见有单向链表和双向链表,
两者都是非循环链表,可以在表头或者表尾添加指针域指向表尾或者表头
成为单向循环链表和双向循环链表。
栈[Stack] :实施的操作限定在表尾进行。【LIFO:后进先出】
按照存储方式分为:顺序栈和链栈
队列[Queue]:实施的操作限定在表头和表尾进行。【FIFO:先进先出】
按照存储方式分为:顺序队列和链队列。顺序队列可以转换为循环队列。
2>:广义表
广义表作为一种复杂的数据结构,是线性表的扩充,能够表示树结构和图结构。
3>:树
1: 二叉树存储
@:数组存储结构:二叉树的大小和形态不发生大的变化时,适合用数组方式存储二叉树。
@:链式存储结构:
~ 使用二叉链结构,链表的每个链结点由3个域组成。数据域Data,左节点指针域,右 节点指针域。
~ 使用三叉链结构。比二叉链结构多一个指向双亲的指针域,方便找到双亲。
2:常见二叉树
@:二叉查找树:对于树中的每一个节点x,x处的项的值大于x的左子树的所有项的值,小于x的右子树的所有项的值。三个基本操作是:搜索,插入和删除。
@:AVL树和红黑树:二者是种高度平衡的二叉查找树。所谓平衡理想情况下是指对于每一个节点,它的左子树和右子树的高度是相等的。高度平衡指允许对理想情况做稍小改动:每一个节点的左子树和右子树的高度差至多为1.至于如何做到平衡,才是核心。
@:哈夫曼树:对于给定n个叶子节点,每个叶子节点赋予权值,所有叶子节点的带权路径最小的二叉树称为哈夫曼树,也称为最优树。
@:堆:是一种完全二叉树,同时对于任意节点x处的项的关键字大于和等于以x为根节点的子树的所有节点处关键字的值
4>:散列表
将关键字通过散列函数映射到特定未知,以加快查找的速度。主要运用的是:将顺序存储结构(数组)和链式存储结构(链表)相结合。利用各自优势,形成更加强大的结构。
以上是这两天对于数据结构的总结,下一步具体实现。
分享到:
相关推荐
数据结构是信息技术学科的核心内容之一。对培养学生的计算机解决问题的能力,以及形成学科核心素养具有重要作用。在教学中,要精心设计项目活动,使学生能够经历建立数据模型、抽取数据、选择数据结构、实现算法、...
根据提供的文件内容,本节课的主要内容是让学生初识数据结构,并理解算法的三种基本控制结构,包括顺序结构、分支结构和循环结构。同时,通过与学生生活紧密相关的实例,引导学生认识数据结构的概念和常见的数据结构...
第01课时-初识数据结构 数据结构是计算机程序设计的基础,涉及数据抽象、建模、算法设计、编写程序等多个方面。数据结构的概念是指数据元素之间的相互关系,即数据的组织形式。它包括了三个方面的内容:数据元素...
【算法与数据结构快速入门】初识算法和数据结构是编程领域基础且重要的部分,它们是构建高效软件的关键要素。算法是解决问题的具体步骤描述,而数据结构则是组织和存储数据的方式。程序的设计往往离不开这两者的结合...
在初识数据结构中,我们通常会遇到几种常见的线性数据结构,包括: 1. **栈(Stack)**:栈是一种后进先出(LIFO)的数据结构,常用于临时存储和处理数据。它的基本操作包括push(入栈,将元素添加到栈顶)、pop...
初识C++ 初识C++ 初识C++初识C++初识C++初识C++初识C++
初识数据安全系列语音教程
java
总之,“零基础学数据结构代码”是一个很好的起点,它提供了实际操作的机会,帮助你从理论到实践,从初识到精通,逐步掌握这个至关重要的编程领域。在学习过程中,不断探索、思考和实践,将有助于你在IT行业中建立起...
构造程序逻辑,md函数和模块的使用.md字符串和常用数据结构,md面向对象编程基础.md面向对象进阶.md图形用户界面和游戏开发,md文件和异常,md字符串和正则表达式.md进程和线程,md网络编程入门和网络应用开发,md图像和...
初识云计算初识云计算初识云计算初识云计算初识云计算初识云计算初识云计算初识云计算
### 数据结构基础学习(C语言版) #### 第一章 数据结构概述 **1.01 数据结构的前世今生** - **定义与起源:** - 数据结构是指一组数据的存储结构,是计算机科学中一门重要的基础课程。 - 数据结构的发展可以...
python 列表初识,通过此代码,你能够了解到python的列表操作
### 数据结构与算法基础知识 #### 一、初识算法 ##### 1.1 什么是算法? **定义**:在数学和计算机科学领域,算法是指一系列有限的严谨指令,这些指令通常用于解决一类特定的问题或者执行某种计算。算法是解决...
### 数据结构与算法详解 #### 一、初识算法 **1.1 什么是算法?** 算法是指解决问题的一系列步骤或指令集。它是一种清晰、有限的指导过程,用于完成特定任务或解决特定类型的问题。一个好的算法应当具备明确性、...
ARM体系结构,作为当前嵌入式系统设计中最为核心的技术之一,为我们开启了一扇了解和掌握嵌入式微处理器世界的窗口。ARM,全称Advanced RISC Machines,是一类以精简指令集计算机(RISC)架构为基础的微处理器核心...
jvm初识及JIT优化jvm初识及JIT优化jvm初识及JIT优化jvm初识及JIT优化jvm初识及JIT优化jvm初识及JIT优化jvm初识及JIT优化jvm初识及JIT优化jvm初识及JIT优化jvm初识及JIT优化jvm初识及JIT优化jvm初识及JIT优化jvm初识...
三年级信息技术课程《初识画图》课件内容 因为要参加比赛,所属机房 装不上
- **类型**: 数字数据是最常见的类型之一。 **1.2 信息** - **定义**: 信息是对数据进行处理或赋予具体情境后形成的意义。信息具有一定的目的性,能够为用户提供有价值的知识。 - **特征**: 信息具有时效性、共享...
初识C语言.pdf