鍊錶結構體的定義:
// struct ndoe
typedef
struct node
node,
*pnode;
頭插法插入結點:
1.建立頭結點,並分配空間
2.建立新結點,新節點->next指向上乙個節點,頭結點->next指向新結點
pnode list_headinsert
(pnode &head)
pnode new_node;
head-
>next =
null
;// initialize head node
int qon;
cout <<
"please enter the quantity of numbers:"
; cin >> qon;
for(
int i =
0; i < qon; i++
) new_node-
>data = x;
new_node-
>next = head-
>next;
head-
>next = new_node;
}return head;
}
尾插法插入節點:
1.建立頭結點,並分配空間
2.建立新結點,給新結點->data賦值。設定新結點next為null,最後乙個節點的next指向新節點
pnode list_tailinsert
(pnode &head)
pnode new_node;
pnode ptr;
head-
>next =
null
;// initialize head node
ptr = head;
int qon;
cout <<
"please enter the quantity of numbers:"
; cin >> qon;
for(
int i =
0; i < qon; i++
) new_node-
>data = x;
new_node-
>next =
null
; ptr-
>next = new_node;
ptr = ptr-
>next;
// point ro the next node
}return head;
}
釋放空間:
void
free_lnklst
(pnode &head)
}
按序號搜尋:
pnode serch_order
(pnode head,
int i)
// search by serial number
return p;
}
按值搜尋
//search by value return index
intserch_value
(pnode head,
int number)
return i;
}
插入結點:
1.建立新結點
2.新結點指向原ith結點,ith的前乙個節點指向新結點。
void
insert
(pnode head,
int ith)
刪除節點:
void
delete_node
(pnode head,
int ith)
求表長:
int
dertermin_len_lnklst
(pnode head)
return len;
}
資料結構 鍊錶(C )
typedef int rank define listnodeposi t listnode template class listnode listnode t e,listnodeposi t p null,listnodeposi t s null data e prenode p back...
C 資料結構 鍊錶
理論基礎 鍊錶是用一組任意的儲存單元來儲存線性表中的資料元素。如果結點的引用域只儲存該結點直接後繼結點的儲存位址,則該鍊錶叫單鏈表 singly linked list 單鏈表由頭引用h唯一確定。頭引用指向單鏈表的第乙個結點,也就是把單鏈表第乙個結點的位址放在h中。c 實現 1介面 引用線性表的介面...
C 資料結構 鍊錶
資料結構2 鍊錶.cpp 此檔案包含 main 函式。程式執行將在此處開始並結束。include pch.h include using namespace std typedef struct lnode 定義乙個節點 list void createla list l,int n,int len...