线性表的顺序实现
来源:互联网 发布:小米手环2淘宝50天预发 编辑:程序博客网 时间:2024/04/28 07:29
#include <stdio.h>
#include <stdlib.h>
/* 函数结果状态代码 */
#define TRUE 1
#define FALSE 0
#define OK 1
#define ERROR 0
#define INFEASIBLE -1 //不可实行
#define OVERFLOW -2 //溢出
/* STATUS是函数的类型,其值是函数结果状态代码 */
typedef int STATUS;
typedef int ELEMTYPE;
/* 线性表的动态分配顺序存储结构 */
#define LIST_INIT_SIZE 100 //线性表存储空间的初始化分配量
#define LISTINCREMENT 10 //线性表存储空间的分配增量
typedef struct {
ELEMTYPE * elem; //存储空间基址
int length; //当前长度
int listsize; //当前分配的存储容量(以sizeof(ELEMTYPE)为单位)
}SqList;
#define NUM 5
/****************************************************************
构造一个空的线性表,并将每个元素初始化为0.
成功返回OK,失败返回OVERFLOW.
****************************************************************/
STATUS InitList_Sq(SqList *L)
{
L-> elem = (ELEMTYPE *) malloc(LIST_INIT_SIZE * sizeof(ELEMTYPE));
if(!L-> elem) return OVERFLOW; //存储分配失败
L-> length = 0; //空间长度为0
L-> listsize = LIST_INIT_SIZE; //初始存储容量
return OK;
}
/****************************************************************
测试函数(main函数)
*****************************************************************/
void main()
{
SqList L;
int i;
//测试初始值
InitList_Sq(&L);
printf( "测试初始值/t/tlength = %d/n ", L.length);
for(i = 0; i < NUM; i++)
printf( "elem[%d] = %d ", i, L.elem[i]);
printf( "/n/n ");
}
- 线性表的顺序实现
- 线性表的顺序实现
- 线性表的顺序实现
- 线性表的顺序实现
- 线性表的顺序实现
- 顺序线性表的实现
- 线性表的顺序实现
- 线性顺序表的实现
- 线性表的顺序实现
- 线性表顺序实现
- 线性表顺序实现
- 线性表顺序实现
- 线性表顺序实现
- 线性表-顺序实现
- 线性表--顺序实现
- 线性表的顺序存储的实现
- 关于线性表的线性表的实现(顺序结构)
- 线性表的实现--顺序表&&链表
- 4. 来自 Google 的奇技
- 5款优秀免费在线数据备份/存储工具
- 如何设置网页标题图标 FavIcon
- void及void指针含义的深刻解析
- 6. 命名约定
- 线性表的顺序实现
- Android 3D与JNI结合的小例子
- 程序员需要具备的基本技能
- 5. 其他 C++ 特性
- Asterisk Manager Interface(AMI)
- 7. 注释
- 8. 格式
- 访问指针所指向的位置
- java 序列化版本的作用