c语言实现数据结构中顺序表的源代码
来源:互联网 发布:快递软件哪个好 编辑:程序博客网 时间:2024/04/29 02:23
对于很多初学c语言的同学·,虽然都能理解数据结构中的思想,但是不一定能用c一行一行撸出一个完整的代码,我最近也正好在重新看数据结构,所以就把c语言实现数据结构源代码放出来帮助初学者。
#include <stdio.h>#include <stdlib.h>#define N 5struct LNode {int data[N];int last;};typedef struct LNode *List;//给结构体取一个别名 struct LNode seqList;List makeEmpty(List PtrL) {//对顺序表做初始化或者置为空 PtrL = (List) malloc (sizeof(seqList));PtrL->last = -1;return PtrL;}void Insert(List PtrL, int x, int i) {if(i < 0 || i > PtrL->last+1) {printf("插入位置不合法!");return;//此处对插入的位置做判断,本实例中数组下标从开始。 }if(PtrL->last == N-1) {printf("表已满!");return;//此处判断线性表是否已满 }for(int j = PtrL->last; j >= i; j--)//对表中元素做后移操作,给新插入元素腾个位置 PtrL->data[j+1] = PtrL->data[j];PtrL->last++;PtrL->data[i] = x; }int dele(List PtrL, int i, int e) {if(i <= 0 || i >= PtrL->last+1) {printf("不存在%d个元素",i);return -1;//表示删除元素不存在}e = PtrL->data[i-1];for(int j = i; j <= PtrL->last; j++) {PtrL->data[j-1] = PtrL->data[j];} PtrL->last--;return e;//e为了记录被删除元素的值 }int find(List PtrL, int e) {int i;for(i = 0; i <= PtrL->last && e != PtrL->data[i]; i++);if(i>= 0 && i <= PtrL->last)return i;elsereturn -1;//表示查找元素不存在 } void print(List PtrL) {for(int i = 0; i <= PtrL->last; i++)printf("%d ",PtrL->data[i]);} int main() {List list; int a[100], n, m, k, l;list = makeEmpty(list);//初始化下printf("请输入插入的个数及插入的元素:");scanf("%d", &n);for(int i = 0; i < n; i++) {scanf("%d", &a[i]);Insert(list,a[i],i);//插入5个元素}printf("插入元素后:");print(list);printf("\n");printf("请输入要查找的元素值:");scanf("%d", &m);printf("当前元素位于第%d位置。\n",find(list,m)+1);printf("请输入要删除的元素的位置:");scanf("%d", &k);l = dele(list,k,l);printf("删除后的顺序表为:");print(list);printf("\n");printf("删除的元素值为:%d", l);return 0;}
1 0
- c语言实现数据结构中顺序表的源代码
- c语言实现数据结构顺序表源代码
- [c语言]数据结构 顺序表的实现
- 数据结构:顺序表的实现(C语言实现)
- <数据结构>顺序列表的C语言实现
- <数据结构>顺序栈的C语言实现
- c语言中顺序表的实现
- 数据结构之---c语言实现线性表的顺序表
- C语言数据结构之:顺序表的实现
- 数据结构 顺序表的实现(C语言)
- [数据结构]顺序表的C语言简单实现
- 数据结构_顺序表相关操作C语言源代码
- C语言实现数据结构中的顺序表
- 数据结构C语言实现之顺序表
- 数据结构--顺序表c语言实现
- 【数据结构】C语言实现顺序表
- 【数据结构】C语言实现顺序链表
- 【数据结构】实现顺序表(c语言)
- ReactJS入门(一)—— 初步认识React
- 网络面试题
- 学习算法(2)——查找数组中的相同元素
- 3.14
- POJ 1284 Primitive Roots (欧拉函数--求原根数量)
- c语言实现数据结构中顺序表的源代码
- JavaScript高级程序设计(五)函数表达式
- Java学习----day2——(1)数据类型总结
- android开发知识 logcat
- 卖30美元的unity3d动态水资源插件v1.1免费下载
- hdu 5666 Segment(快速积)
- 高级多线程控制类
- POJ
- jQuery中$(function() {});问题详解