博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
第十四课、线性表的本质和操作-----------------狄泰软件学院
阅读量:6037 次
发布时间:2019-06-20

本文共 923 字,大约阅读时间需要 3 分钟。

一、线性表(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,既有前驱又有后继

4、直接支持逐项访问和顺序存取

四、线性表的常用操作

1、将元素插入线性表

2、将元素从线性表中删除

3、获取目标位置处元素的值

4、设置目标位置处元素的值

5、获取线性表的长度

6、清空线性表

五、线性表类的初步构建

#ifndef LIST_H#define LIST_H#include "Object.h"namespace DTLib{template 
class List : public Object{public: virtual bool insert(int i, const T& e) = 0; virtual bool remove(int i) = 0; virtual bool set(int i, const T& e) = 0; virtual bool get(int i, T& e) const = 0; virtual int length() const = 0; virtual void clear() = 0;};}#endif // LIST_H

都是纯虚函数,抽象类用来被继承的

六、小结

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

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

(3)、线性表可用于描述排队关系的问题

(4)、线性表在程序中表现为一种特殊的数据类型

(5)、线性表在c++中表现为一个抽象类

转载于:https://www.cnblogs.com/gui-lin/p/6828259.html

你可能感兴趣的文章
SpringMVC完成文件上传的基本步骤
查看>>
实例168 使用指针输出数组元素
查看>>
bind 与unbind
查看>>
CSS: Flexbox
查看>>
Python学习
查看>>
Java并发_volatile实现可见性但不保证原子性
查看>>
百度地图添加带数字标注
查看>>
【luogu 1908】逆序对
查看>>
pthread_create线程创建的过程剖析(转)
查看>>
android存储访问框架Storage Access Framework
查看>>
周总结
查看>>
Spring Boot 要点--启动类和热部署
查看>>
Maven配置及本地仓库设置
查看>>
PAT L2-001 紧急救援 —— (多参数最短路)
查看>>
JDK(java se development kit)的构成
查看>>
数据库的备份与恢复
查看>>
Android示例程序剖析之记事本(一)
查看>>
为什么英雄难过美人关?
查看>>
poj 3009 Curling 2.0
查看>>
Tomcat7安装配置 for Ubuntu
查看>>