第三章 线性表

线性表:零个或多个数据元素的有限序列。序列:说明元素之间是有顺序的。若元素存在多个,则第一个元素无前驱,最后一个元素无后缀。其他元素都只有一个前缀和一盒后缀。

线性表中,数据元素有多个数据项。

线性表的抽象数据类型

  定义:

线性表的顺序存储结构:指的是用一段地址连续的存储单元依次存储线性表的数据元素。

线性表的链式存储结构:在链式结构中,除了要存数据元素信息外,还要存储它的后继元素的存储地址,把存储数据元素信息的域称为数据域,把存储直接后继位置的域称为指针域。指针域中存储的信息称为指针或链。这两部分信息组成数据元素ai的存储映像,称为结点(Node)。n个结点链结成一个链表,即为线性表的链式存储结构,因为链表的每个结点中只包含一个指针域,所以叫单链表。

一般单链表的头节点数据域可以不存储数据元素,尾结点指针域为null或“^”

静态链表:用数组描述的链表:数组的元素都是用两个数据域组成,data和cur。也就是说,数组的每个下标都对应一个data和一个cur。cur存放后继的下标。

循环链表:尾结点的指针域存放投结点的位置。

双向链表:在单链表的基础上,每个结点包含一个存放前驱结点地址的指针域,一个数据域,一个指向后置结点的指针域

原文地址:https://www.cnblogs.com/mayZhou/p/8653555.html

时间: 2024-10-12 12:06:35

第三章 线性表的相关文章

第三章 线性表(C#实现)

1.线性表 概念::零个或多个数据元素的有序序列. 描述: 2.线性表的抽象数据类型: ADT线性表 Data:线性表的数据对象集合为{a1,a2,...,an},每个元素的类型均为DataType.其中除第一个元素a1外,每一个元素有且只有一个直接前驱元素,除了最后一个元素an外,每一个元素有且只有一个直接后继元素,数据元素之间的关系是一对一的关系. Operation Init(*L):初始化操作,建立一个空的线性表: IsEmpty(*L):判断线性表是否为空,若为空,则返回true,否则

第三章 线性表---链式存储结构(双向链表)

双向链表(double linked list)是在单链表的每个结点中,再设置一个指向其前驱结点的指针域.结点都有两个指针域,一个指向直接后继,另一个指向直接前驱. 实例: 链表--双向链表 现在分析添加的情况已经有1号英雄和5号英雄,现在要添加3号英雄此时cur指向了1号英雄,hero指向3号英雄cur指向1号英雄,发现cur的下一个是5号英雄,大于要添加的3号英雄分析图过程 (1)让3号英雄指向5号英雄,即把这个①号线搭起来$hero->next=$cur->next; //$cur指向1

第三章 线性表---链式存储结构(循环链表)

将单链表中终端结点的指针端由空指针改为指向头结点,就使整个单链表形成一个环,这种头尾相接的单链表称为单循环链表,简称循环链表(circular linked list) 结构模型

大话数据结构读书笔记系列(三)线性表

    转载请注明来源:http://blog.csdn.net/u010194538/article/details/51001353 第3章线性表 3.2 线性表的定义 线性表(List):零个或多个数据元素的有限序列. 元素之间是有顺序的,若元素存在多个,则第一个元素无前驱,最后一个元素无后继,其他每个元素都有且只有一个前驱和后继. 线性表强调是有限的. 在较复杂的线性表中,一个数据元素可以由若干个数据项组成. 3.4 线性表的顺序存储结构 线性表的顺序存储结构,指的是用一段地址连续的

随便玩玩之PostgreSQL(第三章)表连接查询

随便玩玩之PostgreSQL(第三章)表连接查询 随便玩玩之PostgreSQL 未经授权不得转载

数据结构期末复习第二章线性表

第二章:线性表 1.线性结构的基本特征答:线性结构是若干数据元素构成的有序(次序)集① 集合中必存在唯一的一个“第一元素”:② 集合中必存在唯一的一个 “最后元素”:③ 除第一元素之外,均有 唯一的前驱:④ 除最后元素之外,均有 唯一的后继. 2.线性表的顺序存储结构和链式存储结构分别是______.(  D )   A. 顺序存取的存储结构.顺序存取的存储结构  B. 顺序存取的存储结构.随机存取的存储结构   C. 随机存取的存储结构.随机存取的存储结构  D. 随机存取的存储结构.顺序存取

第二章——线性表

线性表 一.定义 线性表是最常用且最简单的一种数据结构. 简而言之,一个线性表是n个数据元素的有限的序列. 线性表中数据元素之间的关系是一对一的关系,即除了第一个和最后一个数据元素之外,其它数据元素都是首尾相接的 (注意,这句话只适用大部分线性表,而不是全部.比如,循环链表逻辑层次上也是一种线性表(存储层次上属于链式存储),但是把最后一个数据元素的尾指针指向了首位结点).by~百度百科 二.线性表的顺序表示和实现 1.顺序表示指的是用一组地址连续的储存单元依次储存线性表的数据元素. 通常用数组来

数据结构之第二章线性表之静态链式存储

1--特点:用一维数组来描述线性表,用游标代替指针指示节点在数组中的相对位置.不设“指针”类型的高级语言中适用链表结构. 2--线性表的静态链式存储结构 ////  静态单链表.h//  单链表的静态存储//// 6 //  Copyright (c) 2014年 dashuai. All rights reserved.// #ifndef SLIST_H#define SLIST_H#include <stdio.h>#include <stdlib.h> #define MA

数据结构与算法(三)-线性表之静态链表

前言:前面介绍的线性表的顺序存储结构和链式存储结构中,都有对对象地引用或指向,也就是编程语言中有引用或者指针,那么在没有引用或指针的语言中,该怎么实现这个的数据结构呢? 一.简介 定义:用数组代替指针或引用来描述单链表,即用数组描述的链表叫做静态链表,这种描述方法叫做游标实现法: 上面的静态链表图有两个数组游标和数据,其中数据数组存储数据,而游标数组存储同下标为数据的下一个数据的下标值,简单模拟一下静态链表遍历的过程: 先查看下标为999的游标数组值:1: 根据游标数组值1,查找下标为1的数据: