线性表的顺序存储实现(陈越数据结构版)
2016-09-21 17:48
483 查看
//线性表的顺序存储实现(陈越数据结构版) #include <stdio.h> #include <stdlib.h> #define MAXSIZE 100 struct node{ int array[MAXSIZE]; int last;//最后一个元素的下标 }; struct node* Init(struct node * list) { list=(struct node*)malloc(sizeof(struct node)); list->last=-1; return list; } void Delete(struct node* list,int i) { if(i<1||i>list->last+1){ printf("Wrong\n"); return; } for(int j=i;j<list->last;j++) list->array[j-1]=list->array[j]; list->last--; return; } void Insert(struct node* list,int i,int number) { if(list->last==MAXSIZE-1){ printf("Full\n"); return; } if(i<1||i>list->last+2){ printf("Wrong\n"); return; } for(int j=list->last;j>=i-1;j--) list->array[j+1]=list->array[j]; list->array[i-1]=number; list->last++; return; } int Find(struct node* list,int number) { int i=0; while(i<=list->last&&list->array[i]!=number) i++; if(i>list->last) return 0; else return i; } int main() { struct node* list; //初始化 list=Init(list); //插入 Insert(list,1,2);//使插入的元素位于位置i,即下标为i-1处 //删除 Delete(list,1);//删除的元素位于位置i,即下标为i-1处 //查找 int location=Find(list,2); if(location) printf("%d\n",location); else printf("error\n"); return 0; }
相关文章推荐
- 数据结构:线性表(顺序存储)顺序表类(实现顺序表的创建,输出,插入,删除功能)
- 数据结构-线性表的顺序存储实现及各种操作代码
- java实现数据结构中线性表的顺序存储
- 线性表的链式存储实现(无头结点)(陈越数据结构)
- 数据结构:线性表的顺序存储--Java实现
- 数据结构学习笔记-线性表顺序存储(C语言实现)
- Java数据结构——线性表的顺序存储实现
- 数据结构之线性表代码实现顺序存储,链式存储,静态链表(选自大话数据结构)
- 顺序存储线性表的C++实现——严蔚敏版《数据结构》
- 数据结构:线性表(顺序存储)顺序栈类(实现创建,输出,入栈出栈,读栈顶元素功能)
- 数据结构:线性表的链式存储(单向链表)--Java实现
- 线性表(顺序存储)结构与功能的简易实现
- 线性表顺序存储--C实现
- 线性表的顺序存储实现
- 线性表的顺序存储实现及相关操作 C语言版
- (C语言)串定长顺序存储实现(数据结构十二)
- 线性表的顺序存储和链式存储的实现(C)
- 跟我学数据结构--线性表的顺序存储
- 线性表的顺序存储及操作实现
- 线性结构的顺序存储和链式存储的实现代码(二)