https://leetcode-cn.com/problems/delete-node-in-a-linked-list/

 

非常巧妙的一道题。

题目没有给head,心想没有head我怎么才能找到要删除的值对应的节点呢?

仔细一看,题中函数的参数给的不是值,而是要删除的节点node。反而降低了解题难度:

1. 把node.next的值赋给node

2. 把node.next指向node.next.next

其实相当于删除node.next

 1 /**
 2  * Definition for singly-linked list.
 3  * public class ListNode {
 4  *     int val;
 5  *     ListNode next;
 6  *     ListNode(int x) { val = x; }
 7  * }
 8  */
 9 class Solution {
10     public void deleteNode(ListNode node) {
11         node.val = node.next.val;
12         node.next = node.next.next;
13     }
14 }

 

相关文章:

  • 2021-12-03
  • 2022-02-10
  • 2021-12-27
  • 2021-07-19
  • 2022-01-03
  • 2022-12-23
  • 2022-12-23
猜你喜欢
  • 2021-08-30
  • 2021-07-11
  • 2022-12-23
  • 2022-02-24
  • 2022-12-23
  • 2021-06-22
  • 2021-11-27
相关资源
相似解决方案