C 怎麼確定連結串列是否是空的,C 怎麼確定一個連結串列是否是空的

時間 2021-06-25 14:47:02

1樓:

//解決這種問題很簡單,如果連結串列帶頭結點的話,那麼判空就是 p=head->next; p == null

如果不帶頭結點的話 那麼就是 head == null按照你題目的要求那麼就是帶有頭結點。

下面我給你寫個建立連結串列和列印連結串列的程式。

#include

#include

#include

typedef struct m_cargomcargo;

typedef struct m_node*mlist;

void createlink(mlist l)}void printlink(mlist l)printf("\n");

}void main()

2樓:克拉默與矩陣

// 帶頭結點單連結串列

typedef struct lnodelnode,*linklist;

bool isempty(linklist l)還需要什麼儘管提,我極力幫忙

3樓:

可以單獨定義一個表示連結串列資訊的連結串列描述符

typedef m_listdesc

這樣在所有對連結串列的操作函式中都應該加上對此操作符的修改和訪問等內容

4樓:匿名使用者

其實指標,比如這裡的struct m_node *next; 就是一個標識記憶體地址的數字。

如果你初始化的時候不給它設一個值,比如最常用的是0,也就是null(0就是null),用途就是標明這個指標還沒有分配記憶體空間。

一般連結串列由一個head或tail指標標識。

同樣,在沒有分配地址的時候,必須把這個指標設為0,否則就無法知道到底有沒有東西。

總結:每次新開一個指標的時候如果不是一宣告就分配地址,就一定要記得設成null,舉手之勞。

5樓:

p=head->next; p == null

6樓:匿名使用者

二樓沒仔細看,但演算法靠譜!

p=head->next; p == null

7樓:風若遠去何人留

連結串列區分帶頭節點和不帶頭結點兩種。假定連結串列節點指向下一節點的指標變數名為next。那麼區分情況,判斷空連結串列的方法為:

1 帶頭節點。

對於帶頭節點的連結串列,存在有不變的頭結點head,這個節點並不儲存任何資料,僅提供連結串列起始的一個標識。對於此類連結串列,判斷為空的條件為head->next==null。當head的next值為null,這時連結串列為空。

2 不帶頭結點。

不帶頭結點的情況,連結串列的起始節點是可能變化的,但無論如何變化,必須有一個節點指標型別的變數儲存實際上的第一個節點first。

當first為空時,連結串列即為空。這時判斷為空的條件為first==null。

C語言連結串列的問題,高手來看看我怎麼就錯了

見下面 中的註釋 include include struct node int s 0 void main struct node creat struct node head printf 請再輸入一個數 p struct node malloc sizeof struct node scanf...

怎麼確定自己安裝顯示卡驅動是否正確

小小小兔 方法 1 滑鼠右鍵 我的電腦 管理,進入 裝置管理器 檢視 顯示介面卡 是否有歎號。2 如果沒有此選項,說明未安裝顯示卡 3 如果 顯示介面卡 下有一個黃色的 說明顯示卡驅動安裝不正確。 滑鼠右擊開啟 我的電腦 屬性 然後開啟裝置管理器 然後找到顯示卡!你看看你的顯示卡有沒有出現一個黃的歎...

怎麼確定建築頂層坡屋頂內的空間是否利用

1 根據國家對建築面積計算規則,坡屋頂內空間時淨高超過2 10m的部位應計算全面積 淨高在1 20m至2 10m的部位應計算1 2面積 淨高不足 1 20m的部位不應計算面積。沒有1 20m淨高基本上是沒有什麼可利用的價值了!2 根據樓層的 頂層 高度及屋面的坡度和進深!完全可以確定頂層內的空間。 ...