K12教育赛事综合服务平台
聚乐之家官方网站
下载聚乐之家官方App
专注青少年竞赛题库网站
已知单链表节点结构体定义为:
struct ListNode { int val; ListNode *next; ListNode(int x) : val(x), next(nullptr) {} };
现有一个非空单链表,下列说法正确的是:
若要删除头节点,只需执行head = head->next;即可,无需释放内存
head = head->next;
若要删除指针p指向的任意节点,都可以通过将p->next节点的值复制到p中,再删除p->next来实现
若要删除值为val的第一个节点,正确的流程是先遍历找到目标节点,再处理其前驱节点的指针并释放目标节点内存
删除链表节点时无需释放内存,不会造成内存泄漏