数据结构学习笔记 <1> 线性表】的更多相关文章

 一.线性表的抽象数据类型描述 类型名:线性表(List) 数据对象集:线性表示n(>=0)个元素构成的有序序列(a1,a2,……,an) 操作集:线性表L∈List, 整数i表示位置,元素X∈ElementType 二.顺序表 1.定义 typedef struct LNode *List; struct LNode { ElementType Data[MAXSIZE];//存了一个数组,其最多能存MAXSIZE个元素 int Last;//最后一个元素的下标! }; struct LNod…
线性表是指具有相同数据类型的n(n>=0)个数据元素的有限序列,它具有一个表头元素和一个表尾元素,并且每一个数据元素最多只有一个直接前驱和一个直接后继. 线性表的顺序存储也叫作顺序表,它的特性是地址连接.依次存储. 顺序表的定义有静态建表和动态建表两种. 静态建表的实现方法为: #define MaxSize 50 //定义线性表的最大长度 typedef int ElemType; //假定表中元素类型是int typedef struct{ ElemType data[MaxSize]; /…
--------------------------数据结构 --------------------数据结构分 线性数据结构给非线性数据结构 数据和结合 线性表(顺序存储方式)特点:有且仅有一个开始结点和一个终结结点, 内部任意结点均只有一个前驱结点和一个后继结点,且具备增删改查的功能 线性表的顺数存储 :数组 线性表链式存储:单链表栈 堆栈 数据 遵循后进先出 LIFO 规则 入口 称为 栈顶(栈顶元素) 底部称为 栈底(栈底元素) 把数据添加到堆栈中 叫做进栈操作 从栈中吧数据取出来称为退…
Ext JS4 学习笔记之发送表单(Form)时也将表单下的表格(Grid)数据一同发送的方法 昨天在开发的时候遇到个小问题,就是如何将Grid的内容与Form一起发送到服务器端.默认情况下,表单(Form)里的表格(Grid)数据是不随表单一起发送的,这个时候就需要我们将表格里的数据做一下处理.有两种思路,第一种就是发送完Form以后用一个回调函数,再将Grid的数据取出来再发送,这样略嫌麻烦,还得考虑表单发送成功与否等问题:第二种就是讲Grid里的数据分别遍历出来,组成一个Json数据,放到…
很多东西就是要细细的品读然后做点读书笔记,心理才会踏实- Javascript对象本质上就是键值对的集合(Hash结构),但是键只能是字符串,这有一定的限制. 1234 var d = {}var ele = document.bodyd[ele] = 'This is body'console.log(d['[object HTMLBodyElement]']) 上段代码的原意是将DOM节点作为对象d的键,由于对象只接受字符串,所以ele被自动转为[object HTMLBodyElement…
应用程序后在那个的数据大致有四种基本的逻辑结构: 集合:数据元素之间只有"同属于一个集合"的关系 线性结构:数据元素之间存在一个对一个的关系 树形结构:数据元素之间存在一个对多个关系 图形结构或网状结构:数据元素之间存在多个对多个的关系 对于数据不同的逻辑结构,计算机在物理磁盘上通常有两种屋里存储结构 顺序存储结构 链式存储结构 本篇博文主要讲的是线性结构,而线性结构主要是线性表,非线性结构主要是树和图. 线性表的基本特征: 总存在唯一的第一个数据元素 总存在唯一的最后一个数据元素 除…
查找:在数据集合中寻找满足某种条件的数据元素的过程称为查找. 查找表:用于查找的数据集合称为查找表,一般有以下操作:①查找是否在表中:②查找属性:③进行操作. 查找表又分为: ①静态查找表:只可以进行之前的①②操作,例如顺序查找.折半查找: ②动态查找表:可以进行以上①②③所有操作,例如二叉排序树.二叉平衡树. 关键字:数据元素中某个可以唯一标识该元素的数据项. 平均查找长度(ASL):在查找的过程中,一次查找的长度是指需要比较的关键字次数,而平均查找长度则是所有查找过程中进行关键字的比较次数的…
基础概念 数据结构:是相互之间存在一种或多种关系的数据元素的集合. 逻辑结构和物理结构 关于数据结构,我们可以从逻辑结构和物理结构这两个维度去描述 逻辑结构是数据对象中数据元素之间的关系,是从逻辑意义上去描述的数据之间的组织形式. 逻辑结构有4种: 集合结构(数据元素之间仅以集合的方式体现,元素之间没有别的关系) 线性结构(数据元素之间存在一对一的关系) 树(数据元素之间为一对多或多对一的关系) 图(数据元素之间为多对多的关系) 物理结构则是逻辑结构在计算机中内存中的存储形式,分为两种: 顺序存…
线性表最简单的刚开始就是顺序存储结构,我是看着郝斌的视频一点一点来的,严蔚敏的书只有算法,没有具体实现,此笔记是具体的实现 为什么数据结构有ADT呢,就是为了满足数据结构的泛性,可以在多种数据类型使用 这里所说的数组并不是简单那种数组,这里所讲的是数组结构,就是在内存中是连续存储的,所以要先构造出一个这样的结构 typedef int ElemType; typedef struct { ElemType* elem; //数组结构中的数据区,可以是任何数据类型,常见的是结构体类型 int le…
  本篇是java数据结构与算法的第2篇,从本篇开始我们将来了解栈的设计与实现,以下是本篇的相关知识点: 栈的抽象数据类型 顺序栈的设计与实现 链式栈的设计与实现 栈的应用 栈的抽象数据类型   栈是一种用于存储数据的简单数据结构,有点类似链表或者顺序表(统称线性表),栈与线性表的最大区别是数据的存取的操作,我们可以这样认为栈(Stack)是一种特殊的线性表,其插入和删除操作只允许在线性表的一端进行,一般而言,把允许操作的一端称为栈顶(Top),不可操作的一端称为栈底(Bottom),同时把插入…