【数据结构之线性表总结】
2017-10-08 19:18
204 查看
前言:
这几天在学习数据结构,引用书中的一句话:数据结构 = 程序 + 算法;本篇博客作为一个知识的总结,希望给大家带来帮助.
核心 :
线性表定义
从字面意义来看,呈线性,所以说,它是一种线性结构,现在我们来看书中的定义:线性表是由n(n>=0)个数据元素组成的有穷序列.
线性表特征
一对一的关系
若结点不为0,除了起始结点没有直接前驱外,其他每个结点有且仅有一个直接前驱,
除了终端结点没有直接后继外,其他每个结点有且仅有一个直接后继..
线性表的顺序存储
插入:
void InsertSeqlist(SeqList L,DataType x,int i){
//将元素x插入到顺序表L的第i个数据元素之前
if(L.length == Maxsize) exit("表已满");
if(i < 1 || i > L.length + 1) exit("位置错")//检查插入位置是否合法
for (j = L.length; j >= i;j--) //初始化i = L.length
L.data[j] = L.data[j-1]; //依次向后移
L.data[i-1] = x; // 元素x置入到下标为i - 1的位置
L.length++; //表长度加1
}
删除:
void DeleteSeqlist(SeqList L,int i){
//删除线性表L中的第i个数据结点
if(i < 1 || i > L.length + 1) exit("位置错")//检查插入位置是否合法
for (j = i,j < L.length;j++) //第i个元素的下标i-1
L.data[j-1] = L.data[j]; //依次向左移
L.length--; //表长度减1
}
定位:
void LocateSeqlist(SeqList L,DataType x){
int i = 0;
while((i <L.length) && (L.data[i]!=x)) //在顺序表中查找值为x的结点
i++;
if( i < L.length )
return i + 1; //若找到值为x的元素,返回元素的序号
else return 0; //未查找到值为x的元素,返回0
}
总结:
在总结中进步,不断成长!
这几天在学习数据结构,引用书中的一句话:数据结构 = 程序 + 算法;本篇博客作为一个知识的总结,希望给大家带来帮助.
核心 :
线性表定义
从字面意义来看,呈线性,所以说,它是一种线性结构,现在我们来看书中的定义:线性表是由n(n>=0)个数据元素组成的有穷序列.
线性表特征
一对一的关系
若结点不为0,除了起始结点没有直接前驱外,其他每个结点有且仅有一个直接前驱,
除了终端结点没有直接后继外,其他每个结点有且仅有一个直接后继..
线性表的顺序存储
插入:
void InsertSeqlist(SeqList L,DataType x,int i){
//将元素x插入到顺序表L的第i个数据元素之前
if(L.length == Maxsize) exit("表已满");
if(i < 1 || i > L.length + 1) exit("位置错")//检查插入位置是否合法
for (j = L.length; j >= i;j--) //初始化i = L.length
L.data[j] = L.data[j-1]; //依次向后移
L.data[i-1] = x; // 元素x置入到下标为i - 1的位置
L.length++; //表长度加1
}
删除:
void DeleteSeqlist(SeqList L,int i){
//删除线性表L中的第i个数据结点
if(i < 1 || i > L.length + 1) exit("位置错")//检查插入位置是否合法
for (j = i,j < L.length;j++) //第i个元素的下标i-1
L.data[j-1] = L.data[j]; //依次向左移
L.length--; //表长度减1
}
定位:
void LocateSeqlist(SeqList L,DataType x){
int i = 0;
while((i <L.length) && (L.data[i]!=x)) //在顺序表中查找值为x的结点
i++;
if( i < L.length )
return i + 1; //若找到值为x的元素,返回元素的序号
else return 0; //未查找到值为x的元素,返回0
}
总结:
在总结中进步,不断成长!
相关文章推荐
- 线性表数据结构类型定义及相关操作总结
- 数据结构之线性表学习总结
- 数据结构之线性表题目总结
- 数据结构——线性表的伪链表存储(顺序存储链式遍历)
- 数据结构基础总结
- 数据结构之: 线性链表
- 数据结构之线性表的顺序结构操作2-(删除,插入,查值等)
- 数据结构(线性表)
- 数据结构之线性表
- FFmpeg学习2:解码数据结构及函数总结
- 数据结构之线性表
- 数据结构——线性表的知识架构图
- 数据结构(5)线性表之链表C++实现带头结点的单链表合并
- 【数据结构与算法】【排序算法】排序算法总结
- 数据结构课程大总结
- 数据结构实验之查找七:线性之哈希表
- Python - 函数、排序、线性数据结构
- 数据结构之线性表——倒数第k个结点
- 中国大学MOOC-陈越、何钦铭-数据结构基础习题——总结
- 数据结构及算法学习总结(一)