void creat(list *&l, int n)//建立
r->next = null;
}void destory(list *&l)//銷毀
delete pre;
}void print(list *l)//輸出
}int lenth(list *l)//求長度
return n;
}bool get(list *l, int i, int &e)//獲取所選位置的元素
int j = 0;
list *p = l;
if (i <= 0)return false;
while (j < i&&p != null)
if (p == null)return false;
else }
int serch(list *l, int e)//獲取所選元素的位置
if (p == null)return 0;
else return i;
}bool add(list *&l, int i, int e)//插入到第i個節點
if (p == null)return false;
else }
bool _delete(list *&l, int i)//刪除第i個節點
if (p == null)return false;
else }
void sort(list *&l)//採用插入法
p->next = pre->next;
pre->next = p;
p = q; }}
void reverse(list *&l)//採用三個指標abc,前中後,c儲存後,ba操作中儲存到前
l->next->next = null;//使第乙個結點的指標域為空
l ->next = pre;//指向新的一頭
}
靜態鍊錶和動態鍊錶
鍊錶分為兩種 動態和靜態 動態的結合相關函式能動態開闢記憶體,特點就是不會浪費記憶體單元 靜態鍊錶則沒有這個優點。靜態鍊錶和動態鍊錶是線性表鏈式儲存結構的兩種不同的表示方式。靜態鍊錶的初始長度一般是固定的,在做插入和刪除操作時不需要移動元素,僅需修改指標。動態鍊錶是相對於靜態鍊錶而言的,一般地,在描...
鍊錶的操作
鍊錶是資料結構中的乙個重要組成部分,對鍊錶操作的熟練度怎麼要求都不過分。只有部分核心 主要內容 1 鍊錶的建立 2 鍊錶的釋放 3 鍊錶的查詢 4 鍊錶中節點的插入 5 鍊錶中節點的刪除 6 鍊錶的反轉 7 兩個鍊錶的連線 define max 15 節點宣告 struct list typedef...
鍊錶的操作
結點0為頭結點,不儲存有意義的資料 從結點1開始儲存有意義的資料 include include includetypedef struct node node,pnode pnode create list 建立乙個新鍊錶 void show list pnode 遍歷顯示鍊錶 void add ...