当前位置:网站首页>[offer18] delete the node of the linked list
[offer18] delete the node of the linked list
2022-07-06 12:24:00 【Vigorous waist Nuo dance】
problem
Given the head pointer of one-way linked list and the value of a node to be deleted , Define a function to delete the node .
Return the head node of the deleted linked list .
Be careful : This question is different from the original one
Example 1:
Input : head = [4,5,1,9], val = 5
Output : [4,1,9]
explain : Given that the value of your list is 5 Second node of , So after calling your function , The list should be 4 -> 1 -> 9.
Example 2:
Input : head = [4,5,1,9], val = 1
Output : [4,5,9]
explain : Given that the value of your list is 1 The third node of , So after calling your function , The list should be 4 -> 5 -> 9.
source : Power button (LeetCode)
link :https://leetcode.cn/problems/shan-chu-lian-biao-de-jie-dian-lcof
Copyright belongs to the network . For commercial reprint, please contact the official authority , Non-commercial reprint please indicate the source .
class Solution {
public:
/* Return the head pointer of the linked list , Or use the header node ->next Realization , Or dynamically maintain the header pointer . The code selects the second */
ListNode* deleteNode(ListNode* head, int val) {
/* Traverse a pointer of the linked list */
ListNode* current = head;
/* The essence of deleting a node is to find its precursor .*/
ListNode* prior = head;
/* The length of the linked list is not specified . Then keep cycling .*/
while (1) {
/* When the node is found */
if (current->val == val) {
/* Come up and directly find the target , The first node has no precursor . Require special treatment */
if (current == head) {
/* First consciousness is actually head++, Abandoned */
head = head->next;
return head;
}
else {
prior->next = current->next;
return head;
}
}
/* If not found , Back up the current node */
prior = current;
current = current->next;
}
}
};
边栏推荐
- map文件粗略分析
- js题目:输入数组,最大的与第一个元素交换,最小的与最后一个元素交换,输出数组。
- @The difference between Autowired and @resource
- imgcat使用心得
- RuntimeError: cuDNN error: CUDNN_STATUS_NOT_INITIALIZED
- Arduino uno R3 register writing method (1) -- pin level state change
- MySQL占用内存过大解决方案
- VSCode基础配置
- ORA-02030: can only select from fixed tables/views
- AMBA、AHB、APB、AXI的理解
猜你喜欢
Basic operations of databases and tables ----- modifying data tables
C language callback function [C language]
NRF24L01故障排查
Basic operations of databases and tables ----- classification of data
记一次云服务器被密码爆破的经历——关小黑屋、改密码、改端口
编译原理:源程序的预处理及词法分析程序的设计与实现(含代码)
Understanding of AMBA, AHB, APB and Axi
Redis 缓存更新策略,缓存穿透、雪崩、击穿问题
Single chip Bluetooth wireless burning
Custom view puzzle getcolor r.color The color obtained by colorprimary is incorrect
随机推荐
Rough analysis of map file
Programmers can make mistakes. Basic pointers and arrays of C language
[offer9]用两个栈实现队列
编译原理:源程序的预处理及词法分析程序的设计与实现(含代码)
About using @controller in gateway
@The difference between Autowired and @resource
Problèmes avec MySQL time, fuseau horaire, remplissage automatique 0
NRF24L01故障排查
MP3mini播放模块arduino<DFRobotDFPlayerMini.h>函数详解
Classification, understanding and application of common methods of JS array
[esp32 learning-2] esp32 address mapping
VIM command line notes
Postman 中级使用教程【环境变量、测试脚本、断言、接口文档等】
STM32 how to locate the code segment that causes hard fault
Stm32f1+bc20+mqtt+freertos system is connected to Alibaba cloud to transmit temperature and humidity and control LED lights
By v$rman_ backup_ job_ Oracle "bug" caused by details
Redis cache update strategy, cache penetration, avalanche, breakdown problems
Remember an experience of ECS being blown up by passwords - closing a small black house, changing passwords, and changing ports
Inline detailed explanation [C language]
C language callback function [C language]