使用c++判断顺序链表是否为空
时间: 2023-12-03 19:02:20 浏览: 79
C语言数据结构之判断循环链表空与满
以下是使用C语言实现判断顺序链表是否为空的示例代码:
```c
#include <stdio.h>
#include <stdlib.h>
typedef struct node {
int data;
struct node* next;
} Node;
typedef struct {
Node* head;
int size;
} LinkedList;
// 初始化链表
void initList(LinkedList* list) {
list->head = NULL;
list->size = 0;
}
// 判断链表是否为空
int isEmpty(LinkedList* list) {
return list->head == NULL;
}
int main() {
LinkedList list;
initList(&list);
if (isEmpty(&list)) {
printf("链表为空\n");
} else {
printf("链表不为空\n");
}
return 0;
}
```
在上面的代码中,我们定义了一个`LinkedList`结构体,其中包含了一个指向链表头节点的指针`head`和链表的大小`size`。在`initList`函数中,我们将`head`指针初始化为`NULL`,`size`初始化为0。在`isEmpty`函数中,我们判断链表的头节点是否为`NULL`,如果是,则链表为空;否则,链表不为空。在`main`函数中,我们创建了一个空的链表,并调用`isEmpty`函数来判断链表是否为空。根据输出结果,我们可以看到这个程序正确地判断了链表是否为空。
阅读全文