亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

C++數(shù)據(jù)結(jié)構(gòu)鏈表基本操作示例過程

 更新時間:2021年11月18日 16:25:22   作者:xr415  
這篇文章主要為大家介紹了C++數(shù)據(jù)結(jié)構(gòu)鏈表基本操作的示例過程有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步早日升職加薪

首先創(chuàng)建好一個節(jié)點

typedef struct node {
	int date;
	struct node* next;
}*PNODE;
 PNODE creatnode(int date )
{
	PNODE newnode = (PNODE)malloc(sizeof(struct node));
	assert(newnode);
	newnode->next = NULL;
	newnode->date = date;
	return newnode; 
}

其次創(chuàng)建一個統(tǒng)計節(jié)點屬性

struct List {
	struct node* pronode;//這只是一個類型
	struct node*tailnode;
	int size;
};
//創(chuàng)建統(tǒng)一鏈表屬性的list  
//用來統(tǒng)計鏈表的(size)節(jié)點數(shù)
//head和tail用來統(tǒng)計鏈表的表頭和表尾
struct List* creatlist()
{
	struct List* list = (struct List*)malloc(sizeof(struct List));
	assert(list);
	list->pronode = NULL;
	list->tailnode = NULL;
	list->size = 0;//初始化
	return  list;
 
}

增加節(jié)點

用表頭插入的方法插入節(jié)點

​void insertbyhead(struct List* list,int date)
{
	PNODE newnode = creatnode(date);
	if (list->size == 0)
	{
		list->pronode = list->tailnode = newnode;
	}
	else
	{
		newnode->next = list->pronode;
		list->pronode = newnode;
	}
	list->size++;
}
 
​

刪除節(jié)點

//表頭刪除
void deletehead(struct List* list)
{
	PNODE next = list->pronode->next;
	free(list->pronode);
	list->pronode = next;
}
//表尾刪除
void deletetail(struct List* list)
{
	PNODE pmove = list->pronode;//定義一個移動指針
                                //目的找到表尾指針
	if (list->size == 0)
	{
		printf("無法刪除");
		return;
	}
	while (pmove->next != list->tailnode)
	{
		pmove = pmove->next;
	}
	pmove->next = NULL;//表尾指針前面一個下一個指向null
	free(list->tailnode);
	list->tailnode = pmove;
 
}

以上就是C++數(shù)據(jù)結(jié)構(gòu)鏈表基本操作示例過程的詳細內(nèi)容,更多關(guān)于C++數(shù)據(jù)結(jié)構(gòu)鏈表基本操作的資料請關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

  • C++11如何引入的尾置返回類型

    C++11如何引入的尾置返回類型

    C++11 標準引入的尾置返回類型,可以讓返回復(fù)雜類型的函數(shù)聲明更加清晰易讀,在無法使用C++14 標準的情況下,通過尾置返回類型的語法來推導(dǎo)函數(shù)模板的返回類型無疑是最簡便的方法,這篇文章主要介紹了C++11引入的尾置返回類型,需要的朋友可以參考下
    2023-01-01
  • C++學(xué)習(xí)之命名空間詳解

    C++學(xué)習(xí)之命名空間詳解

    C++中,命名空間(namespace)是一個重要的概念。命名空間可以為函數(shù)、變量、類等定義作用域,避免與其他定義的名稱發(fā)生沖突。下面我們就來了解一下如何使用C++命名空間,以及一些常見的操作吧
    2023-04-04
  • C語言中的字符串數(shù)據(jù)在C中的存儲方式

    C語言中的字符串數(shù)據(jù)在C中的存儲方式

    這篇文章主要介紹了C語言中的字符串數(shù)據(jù)在C中的存儲方式,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-07-07
  • C++實現(xiàn)LeetCode(60.序列排序)

    C++實現(xiàn)LeetCode(60.序列排序)

    這篇文章主要介紹了C++實現(xiàn)LeetCode(60.序列排序),本篇文章通過簡要的案例,講解了該項技術(shù)的了解與使用,以下就是詳細內(nèi)容,需要的朋友可以參考下
    2021-07-07
  • C語言復(fù)雜鏈表的復(fù)制實例詳解

    C語言復(fù)雜鏈表的復(fù)制實例詳解

    這篇文章主要為大家詳細介紹了C語言復(fù)雜鏈表的復(fù)制,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來幫助
    2022-02-02
  • C/C++位操作實例總結(jié)

    C/C++位操作實例總結(jié)

    這篇文章主要介紹了C/C++位操作實例總結(jié),是C/C++程序設(shè)計中很重要的概念,需要的朋友可以參考下
    2014-08-08
  • 最新VScode C/C++ 環(huán)境配置的詳細教程

    最新VScode C/C++ 環(huán)境配置的詳細教程

    這篇文章主要介紹了最新VScode C/C++ 環(huán)境配置的詳細教程,本文通過圖文并茂的形式給大家介紹的非常詳細,對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-11-11
  • libevent庫的使用--定時器的使用實例

    libevent庫的使用--定時器的使用實例

    這篇文章主要介紹了libevent庫的使用--定時器的使用實例,有需要的朋友可以參考一下
    2013-12-12
  • C/C++中二進制文件&順序讀寫詳解及其作用介紹

    C/C++中二進制文件&順序讀寫詳解及其作用介紹

    這篇文章主要介紹了C/C++中二進制文件&順序讀寫詳解及其作用,本文給大家介紹的非常詳細,對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2021-09-09
  • C語言實現(xiàn)刪除某一個數(shù)組值的方法

    C語言實現(xiàn)刪除某一個數(shù)組值的方法

    這篇文章主要給大家分享C語言數(shù)組中刪除數(shù)組中某個值的方法,既然要學(xué)習(xí)刪除數(shù)組中的元素,我們就必須得先知道數(shù)組中有哪些元素。同時還要定義一個變量,并將需要刪除的元素賦值給那個變量。下面來看看文章的詳細內(nèi)容吧
    2021-11-11

最新評論