数据结构-线性表-顺序表
2017-09-18 21:06
363 查看
顺序表代码实现
定义
顺序表=数组+整形长度包含功能
创建空白顺序表数组转顺序表
向后添加一个元素
显示所有元素
删除指定元素
查找元素
插入元素
#include <iostream> #define MAXSIZE 100 typedef int Position; typedef struct LNode *List; struct LNode { int Data[MAXSIZE]; Position Last; }; //----------------------------------------------------------------------------------------------- /* 初始化 */ List MakeEmpty() { List L; L = (List)malloc(sizeof(struct LNode)); L->Last = 0; return L; } //向后添加一个元素 bool addNum(List L,int num){ if(L->Last>=MAXSIZE-1){ return false; } L->Data[L->Last]=num; L->Last++; return true; } //显示所有元素 void showAll(List L){ for (int i = 0; i < L->Last; ++i) { printf("%d\t",L->Data[i]); } } //数组转换顺序表 List arrToNumList(int arr[]){ List L=MakeEmpty(); } //删除指定元素 bool delNum(List L,int index){ if(index>L->Last||index<0){ return false; } for(int i=index+1;i<L->Last;i++){ L->Data[i-1]=L->Data[i]; } L->Last--; } //查找实现 int findNum(List L,int num){ for (int i = 0; i < L->Last; ++i) { if(L->Data[i]==num){ return i; } } return -1; } //插入实现 bool insertNum(List L,int index,int num){ if(L->Last==MAXSIZE||index<0||index>L->Last){ return false; } for (int i = L->Last; i >=index; --i) { L->Data[i]=L->Data[i-1]; } L->Data[index]=num; L->Last++; return true; } //----------------------------------------------------------------------------------------------- int main() { List numList=MakeEmpty(); for (int i = 0; i <10; ++i) { addNum(numList,i); } insertNum(numList,3,100); showAll(numList); return 0; }
相关文章推荐
- 数据结构(一)顺序表和线性表重点概述
- 数据结构_线性表_顺序表 的创建,插入,删除,查找
- 数据结构-线性表_顺序表
- 数据结构线性表的综合实验——顺序表
- 数据结构-线性表-顺序表
- 【数据结构学习2】线性表,顺序表定义中详细表述。
- java实现数据结构-线性表-顺序表,实现插入,查找,删除,合并功能
- 数据结构线性表的两种存储形式顺序表和单链表的比较
- 数据结构 线性表 顺序表
- 数据结构-线性表-顺序表
- 老郭带你学数据结构(C语言系列)1-线性表之静态顺序表
- 【数据结构-线性表】顺序表
- 老郭带你学数据结构(C语言系列)2-线性表之动态顺序表
- 数据结构-线性表-顺序表
- 数据结构 线性表 顺序表合并
- 【数据结构】-线性表-链表 熟练度max=2
- 数据结构-线性表
- 线性表12|循环链表 - 数据结构和算法17
- 数据结构线性表——链表实现
- 数据结构C语言实现系列——线性表