常用数据存储结构的定义(C语言)

//存储的数据类型默认为整数型 //线性表:顺序存储
typedef struct
{int elem[MAXSIZE];//存储数据的一维数组 int last;//最后一个元素的下标 } SeqList; //线性表:链式存储 
typedef struct node
{int data;struct node *next;
}LNode,*LinkList;//栈:顺序栈
typedef struct
{int elem[];//存放栈中元素的一维数组 int top;//存放栈顶元素的下标 
} SeqStack; //栈:链栈
typedef struct node
{int data;struct node *next;} LinkStackNode;typedef LinkStackNode *LinkStack;//队列:链队列typedef struct Node{int data;//数据域struct Node *next;//指针域 } LinkQueueNode;typedef struct{LinkQueueNode *front;LinkQueueNode *rear;}LinkQueue;//队列:循环队列typedef struct{int element[MAXSIZE];//队列的元素空间int front; //头指针指示器 int rear;  //为指针指示器 }SeqQueue; //串:定长顺序串 typedef struct{char ch[MAXLEN];//存储字符的一维数组 int len;//字符串长度 } SString;//串:堆串1typedef struct{int len;//串长度 int start;//起始字符的位置 }HeapString;//串:堆串2typedef struct{char *ch;//串的起始地址int len;//串的长度 } HString;//串:区块串typedef struct Block{char ch[BLOCK_SIZE];struct Block *next;} Block; typedef struct {Block *head;Block *tail; 	}BLString;//稀疏矩阵typedef struct {int row,col;//该非零元素的行下标和列下标 int e; //非零元素值 }Triple;
typedef struct 
{Triple data[MAXSIZE+1];//非零元素的三元组表,data[0]表示未用;int m,n,len;//矩阵的行数,列数和非零元素的个数; } TSMatrix; //二叉树typedef struct Node{int data;struct Node *LChild;struct Node *RChild;} BitNode,*BiTree;


本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!

相关文章

立即
投稿

微信公众账号

微信扫一扫加关注

返回
顶部