大家好,又见面了,我是你们的朋友全栈君。
大话数据结构源代码
第一章 线性表
1. 01 线性表顺序存储_List
#include “stdio.h”
#include “stdlib.h”
#include “io.h”
#include “math.h”
#include “time.h”
#define OK 1
#define ERROR 0
#define TRUE 1
#define FALSE 0
#define MAXSIZE 20 /* 存储空间初始分配量 */
typedef int Status; /* Status 是函数的类型,其值是函数结果状态代码,如
OK 等 */
typedef int ElemType; /* ElemType 类型根据实际情况而定,这里假设为int
*/
Status visit(ElemType c)
{
printf(“%d “,c);
return OK;
}
typedef struct
{
ElemType data[MAXSIZE]; /* 数组,存储数据元素 */
int length; /* 线性表当前长度 */
}SqList;
/* 初始化顺序线性表 */
Status InitList(SqList *L)
{
L->length=0;
return OK;
}
/* 初始条件:顺序线性表L 已存在。操作结果:若L 为空表,则返回TRUE ,否则
返回FALSE */
Status ListEmpty(SqList L)
{
if(L.length==0)
return TRUE;
else
return FALSE;
}
/* 初始条件:顺序线性表L 已存在。操作结果:将L 重置为空表 */
Status ClearList(SqList *L)
{
L->length=0;
return OK;
}
/* 初始条件:顺序线性表L 已存在。操作结果:返回L 中数据元素个数 */
int ListLength(SqList L)
{
return L.length;
}
/* 初始条件:顺序线性表L 已存在,1≤i≤ListLength(L) */
/* 操作结果:用e 返回L 中第i 个数据元素的值,注意i 是指位置,第1 个位置的数
组是从0 开始 */
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;
}
/* 初始条件:顺序线性表L 已存在 */
/* 操作结果:返回L 中第1 个与e 满足关系的数据元素的位序。 */
/* 若这样的数据元素不存在,则返回值为0 */
int LocateElem(SqList L,ElemType e)
{
int i;
if (L.length==0)
发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/152563.html原文链接:https://javaforall.cn
【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛
【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...