C言語各種データ構造定義まとめ
1468 ワード
1.スタック(先進後出)-順序構造
2.スタック(チェーンテーブル構造)
新規作成時にポインタにスペースを割り当てる必要があります
3.キュー(先出し)-シーケンス構造
4,.チェーンテーブルキュー
frontは常にヘッダーを指しています.
6.ツリー-チェーン構造
typedef int DataType;
21
22 typedef struct
23 {
24 DataType data[MAX];
25 int top;
26 }Stack;
27
28 Status InitStack(Stack *S)
29 {
30 S->top = -1;
31 return TRUE;
32 }
2.スタック(チェーンテーブル構造)
新規作成時にポインタにスペースを割り当てる必要があります
typedef int DataType;
typedef struct node
{
DataType data;
struct node *next;
}Node;
typedef Node *LStack;
3.キュー(先出し)-シーケンス構造
typedef int DataType;
typedef struct
{
DataType data[MAX];
int front;
int rear;
}Queue;
4,.チェーンテーブルキュー
frontは常にヘッダーを指しています.
typedef int QElemType; /* QElemType , int */
typedef struct QNode /* */
{
QElemType data;
struct QNode *next;
}QNode,*QueuePtr;
typedef struct /* */
{
QueuePtr front,rear; /* 、 */
}LinkQueue;
5.ツリー-一般構造typedef char TElemType; /* , */
16 typedef TElemType SqBiTree[MAX_TREE_SIZE]; /* 0 */
17
18 typedef struct
19 {
20 int level,order; /* , ( ) */
21 }Position;
22
23 TElemType Nil='#'; /* # */
6.ツリー-チェーン構造
typedef char TElemType;
17 TElemType Nil=' '; /* */
18
19
20 typedef struct BiTNode /* */
21 {
22 TElemType data; /* */
23 struct BiTNode *lchild,*rchild; /* */
24 }BiTNode,*BiTree;
25