数据结构 c++实现顺序表的基本操作/初始化/输入/输出/插入/删除
2018-06-26 17:58
405 查看
版权声明: https://blog.csdn.net/qq_41542894/article/details/80818842
阅读更多
#include <iostream> using namespace std; #define Maxsize 15 using namespace std; typedef int DataType; typedef struct{ DataType data[Maxsize]; //建立一维数组 int SeqLength; //线性表长度 }SeqList; //初始化顺序表 SeqList *Init_SeqList(); //插入顺序表的内容 void Define_SeqList(SeqList *L,int n); //取出顺序表中的元素 void DisPlay_SeqLIst(SeqList *L); //添加元素到指定的位置 int InSert_SeqList(SeqList *L,int i,DataType x); //删除指定位置元素 int Delete_SeqList(SeqList *L, int i); //顺序化初始化算法并清空表 SeqList *Init_SeqList() { SeqList *L; L=new SeqList; L->SeqLength=0; //长度设置为-1 return L; } //给顺序表插入元素内容 void Define_SeqList(SeqList *L,int n) { cout<<"请依次输入顺序表要存储的元素"<<endl; for(int i=0;i<n;i++) { cin>>L->data[i]; //输入数组元素 L->SeqLength++; } } //取出顺序表元素内容 void DisPlay_SeqLIst(SeqList *L) { int i; for(i=0;i<=L->SeqLength-1;i++) { cout<<L->data[i]<<" "; } cout<<endl; } //添加元素到某个位置 int InSert_SeqList(SeqList *L,int i,DataType x) { cout<<"把元素"<<x<<"位置上"<<endl; if (i < 1 || i > L->SeqLength + 1) // 判断是否插错 { cout<<"插入位置错误"<<endl; return 0; } if (L->SeqLength == Maxsize-1) //数组长度设定为-1 表满 { cout<<"表满"<<endl; return -1; } for(int j = L-> SeqLength - 1; j>=1; j--) //i之后全部往后移 { L->data[j+1]=L->data[j]; } L->data[i-1] = x; //插入 L->SeqLength++; cout<<"插入成功"<<endl; DisPlay_SeqLIst(L); return 1; } //删除操作 int Delete_SeqList(SeqList *L, int i) { cout<<"将位置"<<i<<"的元素删除"<<endl; int j; if(i<1||i<L->SeqLength-1) { cout<<"不存在第"<<i<<"个元素"<<endl; return 0; } for(j=i;j<L->SeqLength-1;j++) { L->data[j]=L->SeqLength-1; } L->SeqLength--; cout<<"删除成功"<<endl; DisPlay_SeqLIst(L); return 1; } int main() { SeqList *L; //顺序表定义 L=Init_SeqList(); //顺序表初始化 Define_SeqList(L,6); //定义顺序表 DisPlay_SeqLIst(L); //顺序表的输出 InSert_SeqList(L,4,3); //顺序表的插入 Delete_SeqList(L,5); //顺序表删除 return 0; }
阅读更多
相关文章推荐
- c++ 实现顺序表类(初始化、输入、插入与删除)<<计算机软件技术基础 徐士良>>
- c语言:顺序表的实现(一) 创建,插入,删除,查找,输出等基本操作实现
- 数据结构线性表之顺序表的基本操作插入、删除、遍历、初始化
- 学习笔记——C语言实现单链表的基本操作:创建、输出、插入结点、删除结点、逆序链表
- 顺序表的实现以及简单的 插入,删除,查找,输出操作
- 数据结构之队列的基本操作入队出队初始化删除-c++代码实现及运行实例结果
- 数据结构 线性链表的创立及其基本操作初始化、遍历、销毁、判空、求表长、删除、插入等
- C++实现最小堆及插入,调整顺序,删除堆顶元素的操作
- 数据结构之队列的基本操作入队出队初始化删除-c++代码实现及运行实例结果
- 【数据结构】用C++实现顺序表的各种操作(包括头删,尾删,插入,逆序,摧毁,清空等等)
- 数据结构之队列的基本操作入队出队初始化删除-c++代码实现及运行实例结果
- 学习笔记——C语言实现单链表的基本操作:创建、输出、插入结点、删除结点、逆序链表
- 编程实现顺序表的以下基本操作:建立顺序表,修改顺序表,插入顺序表,删除顺序表。
- 数据结构之队列的基本操作入队出队初始化删除-c++代码实现及运行实例结果
- 数据结构之队列的基本操作入队出队初始化删除-c++代码实现及运行实例结果
- 线性表的顺序存储格式基本操作:初始化、插入、删除、查找、打印
- 线性表链式存储结构下基本操作的实现(初始化、赋值、取值、插入、删除、归并等)
- 【数据结构】采用数组的形式实现顺序表的建立、插入、删除等操作
- 数据结构之队列的基本操作入队出队初始化删除-c++代码实现及运行实例结果
- C++实现顺序表的常用操作(插入删出查找输出)