1,單向鏈簡潔。
單向鍊錶(單鏈表)是鍊錶的一種,其特點是鍊錶的鏈結方向是單向的,對鍊錶的訪問要通過順序讀取從頭部開始;鍊錶是使用指標進行構造的列表;又稱為結點列表,因為鍊錶是由乙個個結點組裝起來的;其中每個結點都有指標成員變數指列表中的下乙個結點;
列表是由結點構成,由head指標指向第乙個成為表頭的結點而終止於最後乙個指向null的指標;
2,例子要求:
根據示例**中的例子,完成單向鍊錶(single linked list)中的以字串為資料的鍊錶的插入、刪除以及查詢,並支援單向鍊錶的反轉;
3,**實現。
#include
#include
#include
#include
#include
//節點的定義
typedef struct node nodestruct, *pnode;
pnode head = null;
typedef char (*pcomparefunc)(void *a, void *b);
typedef void* (*pchar)(void *p);
// 字串判斷
int str_compare(void *a, void *b)
// 分配乙個節點
pnode allocate_node(void *data, pchar char_func)
// 建立節點
pnode allocate()
// 新增乙個節點
void insertnode(pnode node)
else
}void* char_char(void *p)
// 初始化節點
pnode allocate_node(void *data, pchar char_func)
// 釋放資源
void free_list(pnode node)
}// 1.1 新增乙個節點
void insert(pnode node)
}查詢int str_search(void* data,pcomparefunc compare)
prev = next;
next = next->next;
}// 如果一直查詢不到,就返回0
return 0;
}// 1.3刪除節點
void remove(void* data,pcomparefunc compare) else
break;
}prev = next;
next = next->next;}}
反轉void invert_order()
head.next=this;
}void main()
C語言 單向鍊錶
1.c語言單向鍊錶 2.鍊錶的 增,刪,查,遍歷 author mr.long date 2015 12 1 15 24 26 include include 結構定義 struct node 函式定義 void printnode struct node head struct node addf...
C語言 單向鍊錶
1 單向鍊錶的定義 struct student next作為同型別指標,指向與它所在節點一樣的節點。1 建立鍊錶 int main 定義建立函式create,建立乙個有n個節點的單向鍊錶 struct student create int n ptail next null return head...
C語言之鍊錶
鍊錶的觀念 鍊錶是一種物理儲存上非連續,資料元素的邏輯順序通過鍊錶中的指標鏈結次序,實現的一種線性儲存結構。特點 鍊錶由一系列節點 鍊錶中每乙個元素就稱為節點 組成,節點在執行時動態生成 malloc 每個節點包括兩部分 乙個是儲存資料元素的資料域 乙個是儲存下乙個節點位址的指標域 定義乙個鍊錶 t...