/*
*鍊錶的建立、刪除節點、側長和列印;
*/ #include #include #include struct linknode
;typedef linknode* linklist;
//linknode* addnode(linknode* p,int data);
//int list_length(linklist head);
//void list_print(linklist head);
//void list_delete_node(linklist head,int num);
//void list_reverse(linklist head);
//linknode* list_middle(linklist head);
int main(void)
int temp=list_length(l1);
printf("the length of l1 is %d\n",temp);
list_print(l1);
// list_delete_node(l1,8);
// list_reverse(l1);
// temp=list_length(l1);
// printf("the length of l1 is %d\n",temp);
// list_print(l1);
linknode*pr=list_middle(l1);
printf("the middle node of l1 is %d\n",pr->data);
system("pause");
return 0;
}//linknode* addnode(linknode* p,int data)
//int list_length(linklist head)
return length;}//
void list_print(linklist head)
} }void list_delete_node(linklist head,int num)
else}}
} //鍊錶逆置
void list_reverse(linklist head)
p2->next=p1;
p1=p2;
}
head->next=p1;
}} //遍歷一次求獲取位於中間位置的那個節點
linknode* list_middle(linklist head)
else break;
}return p;
}else
return 0;
}
雙向鍊錶 建立 列印 測長 查詢 插入 刪除
include using namespace std typedef struct dbnode dbnode 根據資料建立節點 dbnode create int data 插入新節點,總是在表尾插入 返回表頭節點 q right pnode pnode left q return head 實...
鍊錶的基本操作,建立,測長,刪除,列印,插入
老早就想自己寫寫鍊錶的基本操作的實現,寫寫來練練手。include include includeusing namespace std typedef struct nodenode 鍊錶的建立 node createlist int n head head next 第乙個有資料的給頭指標 p1...
鍊錶的建立以及鍊錶節點的增加和刪除
單鏈表的建立過程有以下幾步 1 定義鍊錶的資料結構 2 建立乙個空表 3 利用malloc 函式向系統申請分配乙個節點 4 將新節點的指標成員賦值為空。若是空表,將新節點連線到表頭 若是非空表,將新節點接到表尾 5 判斷一下是否有後續節點要接入鍊錶,若有轉到3 否則結束 單鏈表的輸出過程有以下幾步 ...