线性表的基本操作(一)
来源:互联网 发布:sql查询分析器在哪里 编辑:程序博客网 时间:2024/05/22 10:55
线性表的定义
线性表是具有相同特性数据元素的一个有限序列。该序列中所含元素的个数叫做线性表的长度(n)。注意:n可以等于0,表示线性表是一个空表。空表也可以作为线性表。线性表可分为顺序表和链表,本篇文章中以顺序表为主。
1.顺序表的结构定义
#define maxSize 100typedef struct{ int data[maxSize];//存放顺序表元素的数组 int length;//存放顺序表的长度}Sqlist;
2.顺序表的算法操作
2.1初始化顺序表
只需将length设置为0。
void initList(Sqlist &L){ L.length=0;}
2.2返回第一个比x大的元素的位置
int locateElem(Sqlist L,int x){ int i; for(i=1;i<L.length;i++){ if(x<L.data[i]){ return i; } } return i;}
元素的下标从1开始,0是空位置,不存放数据。
在顺序表中查找第一个值等于e的元素,返回其下标。
int locateElem(Sqlist L,int e){ int i; for(i=1;i<L.length;i++){ if(e==L.data[i]){ return i; } } return 0;}
2.3插入元素
思路解析:找到插入位置之后,将插入位置以及其以后的元素向后移动一个元素的位置即可。
注意:移动元素的时候先移动最右边的元素,如果先移动最左边的元素则右边的元素会被左边的元素覆盖(如图)
void insert(Sqlist &L,int x){ int p,i; p = locateElem(L,x);//调用locateElem()函数来找到插入位置p for(i=L.length;i>=p;i--){ L.data[i+1]=L.data[i];//元素右移一个位置 } L.data[p]=x;//将x放在插入位置p上 ++(L.length);//表内元素多了一个,故表长自增1}
在顺序表L的第p(1<=p<=length)个位置上插入新元素e。如果p的位置不正确,返回0(插入失败);如果p正确,则将顺序表第p个元素以及以后元素右移一个位置,腾出一个空位置来插入新元素,顺序表长度自增1,插入成功返回1。
int insert(Sqlist &L,int p,int e){ int i; //位置错误,表长已最大 if(p<1||p>L.length||L.length==maxSize-1){ return 0; } for(i=L.length;i>=p;i--){ L.data[i+1]=L.data[i]; } L.data[p]=e; ++(L.length); return 1;}
2.4获取指定位置的元素
用e返回L中的p(1<=p<=length)位置上的元素
int getElem(Sqlist L,int p,int &e){ if(p<1||p>L.length){ return 0; } e=L.data[p]; return 1;}
0 0
- 线性表的基本操作(一)
- 实验一 线性表的基本操作
- 实验一:线性表的基本操作
- 实验一、线性表的基本操作及实现
- 实验一 线性表的基本操作实现
- 实验一线性表的基本操作实现及其应用
- 实验一 线性表的基本操作实现及其应用
- 实验一线性表的基本操作实现及其应用
- 实验一线性表的基本操作实现及其应用
- 实验一线性表的基本操作实现及其应用
- 实验一 线性表的基本操作实现及其应用
- 实验一线性表的基本操作实现及其应用
- 实验一线性表的基本操作实现及其应用
- 实验一线性表的基本操作实现及其应用
- 实验一 线性表的基本操作实现及其应用
- 实验一线性表的基本操作实现及其应用
- 实验一线性表的基本操作实现及其应用
- 实验一线性表的基本操作实现及其应用
- win10+VS2013+caffe安装
- CentOS 6.5 用shell脚本安装jdk
- JAVA高级特性整理
- Sublime text 3中C++环境配置及命令行运行窗口创建
- Android关于获取到本机ip和mac地址
- 线性表的基本操作(一)
- Redis3.X配置文件和sentinel配置文件详解
- hibernate配置数据库连接池的三种方法
- jQuery整理
- 八皇后
- Codefroces 486C Palindrome Transformation【贪心】好题
- hdu2554N对数的排列问题+数学推论
- Linux命令之"tail"
- Linux成长之路(三)——环境变量和搜索文件