1. 程式人生 > >資料結構基礎學習筆記 part 2

資料結構基礎學習筆記 part 2

鏈的儲存結構定義

單鏈表 結點資料域 結點的指標域

typedef struct LNode
{
  ElemType data;
  struct LNode *next;
}LNode,*LinkList

鏈棧 資料域 結點的指標域

typedef struct StackNode
{
  ElemType data;
  struct StackNode *next;
}StackNode,*LinkStack

鏈隊 資料域 (結點指標域 隊頭指標 隊尾指標)

typedef struct QNode
{
  QElemType data;
  struct
QNode *next; }QNode,*QueuePtr; typedef struct { QueuePtr front; QueuePtr rear; }LinkQueue;

鏈串 陣列 (結點指標 頭指標 尾指標) 長度

#define CHUNKSIZE 80
typedef struct Chunk
{
  char ch[CHUNKSIZE];
  struct Chunk *next;
}Chunk;

typedef struct
{
  Chunk *head,*tail;
  int length;
}LString;

雙向連結串列 資料域 直接前驅 直接後繼

typedef struct DuLNode
{
  ElemType data;
  struct DuLNode *prior;
  struct DuLNode *next;
}DuLNode,*DuLinkList;

順序表的資料結構定義

順序表 陣列基地址 最大容量

#define MAXSIZE 100
typedef struct
{
  ElemType *elem;
  int length;
}SqList;

順序棧 棧底指標 棧頂指標 最大容量

#define MAXSIZE 100
typedef struct
{
  SElemType *base
; SElemType *top; int stacksize; }SqStack;

順序佇列 陣列基地址 頭指標 尾指標(並不算指標,為int,起指標作用)

#define MAXSIZE 100
typedef struct
{
  QElemType *base;
  int front;
  int rear;
}SqQueue;

順序串 陣列 長度

#define MAXLEN 255
typedef struct
{
  char ch[MAXLEN+1];
  int length;
}SString;