数据结构C语言
来源:互联网 发布:淘宝助理百世快递模板 编辑:程序博客网 时间:2024/06/06 20:56
数据结构C语言
根据大话数据结构整理,让代码更易读
#include <stdio.h>#define MAXSIZE 20#define OK 1#define ERROR 0#define TRUE 1#define FALSE 0typedef int Status;typedef int ElemType; /* 元素类型根据实际情况而定,这里假设为int *///线性表的顺序实现typedef struct{ ElemType data[MAXSIZE]; /* 数组存储数据元素,最大值为MAXSIZE */ int length; /* 线性表当前长度 */} SqList;//获取元素,使用指针返回其值Status GetElem(SqList L, int i, ElemType *e){ if (L.length == 0 || i < 1 || i > L.length) { return ERROR; } *e = L.data[i - 1]; return OK;}//插入元素Status ListInsert(SqList *L, int i, ElemType e){ int k; if (L->length == MAXSIZE) /* 顺序线性表已经满 */ { return ERROR; } if (i < 1 || i >L->length + 1) /* 当i不在范围内时 */ { return ERROR; } if (i <= L->length) { for (k = L->length - 1; k >= i - 1; k--) { L->data[k + 1] = L->data[k]; } } L->data[i - 1] = e; L->length++; return OK;}/***/Status ListDelete(SqList *L, int i, ElemType *e){ int k; if (L->length == 0) /* 线性表为空 */ { return ERROR; } if (i < 1 || i > L->length) /* 删除位置不正确 */ { return ERROR; } *e = L->data[i - 1]; if (i < L->length) /* 如果删除不是最后位置 */ { for (k = i; k < L->length; k++) /* 将删除位置后继元素前移 */ { L->data[k - 1] = L->data[k]; } } L->length--; return OK;}/**测试代码*/int main(void){ SqList l; SqList *p; p=&l; int u=ListInsert (p,1,8); printf("xxxxxxx%d\n",u); int c; ListInsert(p,2,9); GetElem(l,1,&c); printf("%d\n",c); return 0;}
阅读全文
0 0
- 基数排序 C语言数据结构
- 数据结构(C语言实现)
- C语言的数据结构
- C语言数据结构----链表
- C语言的数据结构
- 数据结构c语言学习
- 数据结构(C语言)
- 《数据结构》、《软件工程》、《C语言》
- 《数据结构》、《软件工程》、《C语言
- 数据结构c语言基础
- C语言之数据结构
- 数据结构--单链表(C语言)
- 数据结构--双链表(C语言)
- C语言数据结构-单链表
- C语言数据结构-双链表
- C语言数据结构-链栈
- C语言数据结构-树
- 数据结构C语言实现
- Apache配置虚拟主机
- 使用Mybatis-Generator自动生成Dao、Model、Mapping相关文件
- 1004.成绩排名
- 在Windows的命令窗口运行.py程序
- Java 多线程 (PART XV) wait()/notify()方法
- 数据结构C语言
- UVa 247 电话圈(Floyed判环)
- # Pixhawk开发(文档小结)
- 函数声明与函数表达式的区别
- Who's in the Middle(poj2388 排序)
- Pycharm连接GitHub笔记
- Java中的有参无参构造方法与继承的关系
- java AWT 绘图,实现弹球游戏,有实现keylistener,timer功能
- Maven项目的pom.xml常见配置(Eclipse)