数据-第5课-线性表的本质

第5课-线性表的本质

  1. 线性表的定义

(1) 线性表(List)是零个或多个数据元素的集合。

(2) 线性表中的数据元素之间是有顺序的。

(3) 线性表中的数据元素个数是有限的。

(4) 线性表中的数据元素的类型必须相同。

定义:

线性表是具有相同类型的 n( ≥ 0)个数据元素的有限序列 (a1, a2,...,an)  ai表示项,n表示长度。

  1. 线性表的性质

(1) a0为线性表的第一个元素,只有一个后继。

(2) an为线性表的最后一个元素,只有一个前驱。

(3) 除a0和an外的其它元素ai,既有前驱,又有后继。

(4) 线性表能够逐项访问和顺序存取。

  1. 线性表的深度理解

下面的关系中可以用线性表描述的是

A. 班级中同学的友谊关系。   不可以,没有前驱和后继。

B. 公司中的上下级关系。     不可以,对应关系不对。

C. 冬天图书馆排队占座关系。 不可以,一个人可以帮多个人占座,或者占了空的座位。

D. 花名册上名字之间的关系。 可以,前驱,后继,固定位置,有限。

小结:

(1) 线性表是数据元素的有序并且有限的集合。

(2) 线性表中的数据元素必须是类型相同的。

(3) 线性表可用于描述“队列类型”关系的问题。

一年的12个月构成了一种线性表!

原文地址:https://www.cnblogs.com/free-1122/p/9884928.html

时间: 2024-11-06 22:02:46

数据-第5课-线性表的本质的相关文章

第5课 - 线性表的本质

第5课 - 线性表的本质 数据结构是为了解决生活中的实际问题而存在的,那生活中与线性表相对应的例子有什么呢? 幼儿园中就有一个例子,在老师安排小朋友活动时,会将小朋友组织成下面的站队形式,这个就是线性表. 1. 线性表的定义 (1)线性表是0个或多个数据元素的集合 (2)线性表中的数据元素之间是有顺序的,这一点非常重要 (3)线性表中的数据元素的个数是有限的,这和实际生活相符(在数学中,线性表的个数可以是无穷的) (4)线性表中的数据元素的类型必须相同 2. 线性表的性质 (1)a0 为线性表的

第十四课 线性表的本质和操作

线性表(List)的表现形式: 零个或者多个数据元素组成的集合 数据元素在位置上是有序排列的 数据元素的个数是有限的 数据元素的类型必须相同 线性表的抽象定义: 线性表的性质: a0为线性表的第一个元素,只有一个后继 an-1为线性表的最后一个元素,只有一个前驱 除了a0和an-1外,其他的元素ai,既有前驱又有后继 直接支持逐项访问和顺序存取 我们思考下面的问题: 班级同学之间的关系不是一对一的,所以不能用线性表描述 公司中的领导可以领导很多人,所以不能用线性表描述 用物品排队占座是不能用线性

线性表的本质

有时候就会有一种感觉,尽管学习了C和C++,看到程序都差不多看得懂,但是真正让自己去开发一个软件或者独立性的去写一些代码的时候还是很困难,我们都知道程序的灵魂是算法,一个程序是算法和数据结构的相结合,在接下来来的寒假时光中,笔者将会学习数据结构的一些基础知识,并且加上个人的一些理解,和大家一起分享. 下面我将从4个方面介绍线性表的基本和常用知识.线性表的本质,线性表的相关操作,线性表的顺序存储结构,线性表链式存储结构. 一个线性表是是n个数据元素的有限序列,有以下定义: 线性表是零个或者多个数据

第7课 - 线性表的顺序存储结构

第7课 - 线性表的顺序存储结构 1. 顺序存储定义 线性表的顺序存储结构,指的是用一段地址连续的存储单元依次存储线性表的数据元素. 根据上面的定义,在 C 语言中可以用一维数组来实现顺序存储结构: #define MAXSIZE xx /* xx为存储空间初始分配量 */ typedef int ElemType; /* ElemType类型根据实际情况而定,这里假设为int */ typedef struct _tag_List { ElemType node[MAXSIZE]; /* 数组

第十四课、线性表的本质和操作-----------------狄泰软件学院

一.线性表(List)的表现形式 1.零个或者多个数据元素组成的集合 2.数据元素在位置上是有序排列的 3.数据元素的个数是有限的 4.数据元素的类型必须相同 二.线性表(List)的抽象定义 1.线性表是具有相同类型的n(>=0)个数据元素的有限序列 {a0,a1,a2,....an-1} ai是表项(数据元素),n是表长度 三.线性表(List)的性质 1.a0为线性表的第一个元素,只有一个后继 2.an-1为线性表的最后一个元素,只有一个前驱 3.除a0和an-1外的其它元素ai,既有前驱

线性表的本质、操作及顺序存储结构(六)

我们说到线性表,可能好多人还不太理解.那么我们举个例子来说,在幼儿园中,老师们总会让小朋友以同样的派对秩序出行,这个例子的本质就是线性表. 那么线性表(List)的表现形式是怎样的呢?符合以下几个特征:1.零个或多个数据元素组成的集合:2.数据元素在位置上是有序排列的:3.数据元素的个数是有限的:4.数据元素的类型必须是相同的.那么线性表的抽象定义是怎么定义的呢?线性表是具有相同类型的 n( ≥ 0 ) 个数据元素的有限序列.如下 下来我们来看看 List 的本质:1.a0 为线性表的第一个元素

第六课 线性表的相关操作

线性表的讨论 线性表的操作 线性表的一些常用操作 创建线性表 销毁线性表 清空线性表 将元素插入线性表 将元素从线性表中删除 获取线性表中某个位置的元素 获取线性表的长度 先把方法声明出来,下一节课开始实现: #ifndef _EG_2_1_H_ #define _EG_2_1_H_ typedef void List; typedef void ListNode; /* 该方法用于创建并且返回一个空的线性表 */ List* List_Create(); /* 该方法用于销毁一个线性表list

第21课 线性表的链式存储结构

1. 链式存储的特点 (1)为了表示每个数据元素与其直接后继元素之间的逻辑关系: (2)数据元素除了存储本身的信息外,还需要存储其直接后继的信息. (3)避免了顺序存储结构线性表在插入和删除元素时需要移动大量元素的问题. 2. 链式存储逻辑结构 (1)数据域:存储数据元素本身 (2)指针域:存储相邻结点地址 3. 链表中的基本概念 (1)头结点:链表中的辅助结点,包含指向第一个数据元素的指针 (2)数据结点:链表中代表数据元素的结点,表现形式为:(数据元素,地址) (3)尾结点:链表中的最后一个

第6课 - 线性表的顺序存储结构及实现

1. 线性表的顺序存储结构 [顺序存储结构定义] 线性表的顺序存储结构,指的是用一段地址连续的存储单元依此存储线性表中的数据元素. [设计思路] 可以用一维数组来实现顺序存储结构的线性表. 1 template <typename T> 2 class SeqList : public List<T> 3 { 4 protected: 5 T *m_array; //顺序存储空间 6 int m_length; //当前线性表长度 7 }; [顺序存储线性表类的组成] DTLib顺