動態鍊錶簡單分解

2021-08-20 14:10:02 字數 814 閱讀 3795

#include

#include

#include

#include

#pragma warning(disable:4996)

struct num

;struct num *head = null;//指向第乙個節點位址

int k = 0;//記錄總錄數

void show(void);//顯示

void add(void);//新增

int main(void)

void show(void)

while (head != 0)

}void add(void)

while (1)//死迴圈

p = head;

while (p != null)//迴圈遍歷判斷輸入的使用者id是否存在

p = p->next;

}p_new = (struct num *)malloc(sizeof(struct num));//新增乙個新的節點

p_new->id = num;

printf("請輸入姓名:\n");

scanf("%s", &p_new->name);

printf("請輸入年齡:\n");

scanf("%d", &p_new->age);

k++;//記錄加1

if (k == 1)//如果記錄為1,說明是新節點

else//如果不是新節點

p_old = p_new;//再將p_old重新指向新的尾節點

p_new->next = null;//將新的尾節點的下乙個節點指向空}}

鍊錶 鍊錶劃分 簡單

描述 給定乙個單鏈表和數值x,劃分鍊錶使得所有小於x的節點排在大於等於x的節點之前。你應該保留兩部分內煉表節點原有的相對順序。您在真實的面試中是否遇到過這個題?樣例給定鍊錶 1 4 3 2 5 2 null,並且 x 3 返回 1 2 2 4 3 5 null 題目鏈結 分析 方法一 將所有小於給定...

鍊錶 鍊錶求和 簡單

描述 你有兩個用鍊錶代表的整數,其中每個節點包含乙個數字。數字儲存按照在原來整數中相反的順序,使得第乙個數字位於鍊錶的開頭。寫出乙個函式將兩個整數相加,用鍊錶形式返回和。您在真實的面試中是否遇到過這個題?是 樣例給出兩個鍊錶 3 1 5 null 和 5 9 2 null,返回 8 0 8 null...

靜態鍊錶和動態鍊錶

鍊錶分為兩種 動態和靜態 動態的結合相關函式能動態開闢記憶體,特點就是不會浪費記憶體單元 靜態鍊錶則沒有這個優點。靜態鍊錶和動態鍊錶是線性表鏈式儲存結構的兩種不同的表示方式。靜態鍊錶的初始長度一般是固定的,在做插入和刪除操作時不需要移動元素,僅需修改指標。動態鍊錶是相對於靜態鍊錶而言的,一般地,在描...