当前位置:网站首页>剑指Offer 18.删除链表的节点
剑指Offer 18.删除链表的节点
2022-08-08 03:13:00 【嗝~~~~】
剑指 Offer 18. 删除链表的节点
难度简单
给定单向链表的头指针和一个要删除的节点的值,定义一个函数删除该节点。
返回删除后的链表的头节点。
注意:此题对比原题有改动
示例 1:
输入: head = [4,5,1,9], val = 5
输出: [4,1,9]
解释: 给定你链表中值为 5 的第二个节点,那么在调用了你的函数之后,该链表应变为 4 -> 1 -> 9.
示例 2:
输入: head = [4,5,1,9], val = 1
输出: [4,5,9]
解释: 给定你链表中值为 1 的第三个节点,那么在调用了你的函数之后,该链表应变为 4 -> 5 -> 9.
说明:
题目保证链表中节点的值互不相同
若使用 C 或 C++ 语言,你不需要 free 或 delete 被删除的节点
代码
/** * Definition for singly-linked list. * struct ListNode { * int val; * ListNode *next; * ListNode(int x) : val(x), next(NULL) {} * }; */
class Solution {
public:
ListNode* deleteNode(ListNode* head, int val) {
ListNode *p=head;
ListNode *q=head->next;
if(head->val==val){
head=head->next;
return head;
}
while(q->val!=val){
p=q;
q=q->next;
}
p->next=q->next;
return head;
}
};
边栏推荐
猜你喜欢
随机推荐
egg-session 将数据存储到redis
Lecture 84th Biweekly
【建议收藏】百分百全套中高级Android面试题
STFW3N150 Pin Function Datasheet (PDF) Pin Diagram
egg-validate-自定义校验方法报错语言(报错中文提示)
CGAN理论讲解及代码实现
栈的压入、弹出序列
解决Mysql和redis缓存不一致问题
LeetCode刷题——组合总和 Ⅳ#377#Medium
【STM32】标准库-读写内部Flash及用户选项字节
Redis-事物
JS 怎么使用十六进制保存100位状态的问题
121. Best Time to Buy and Sell Stock买卖股票的最佳时机
RV-GAN:使用新的多尺度生成对抗网络分割眼底照片中的视网膜血管结构
LeetCode二叉树系列——144.左叶子之和
The sock MySQL start failure caused by lock file
egg-阿里云短信配置
PC Museum (5) 1975 IMSAI 8080
巧记硬链接与软链接
An egg - Nodemailer - qq email verification code development configuration









