zoukankan      html  css  js  c++  java
  • LeetCode OJ:Delete Node in a Linked List(链表节点删除)

    Write a function to delete a node (except the tail) in a singly linked list, given only access to that node.

    Supposed the linked list is 1 -> 2 -> 3 -> 4 and you are given the third node with value 3, the linked list should become 1 -> 2 -> 4 after calling your function.

    更改当前节点的值来实现

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

     没什么好说的,下面是java版本的:

     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 public class Solution {
    10     public void deleteNode(ListNode node) {
    11         node.val = node.next.val;
    12         node.next = node.next.next;
    13     }
    14 }
  • 相关阅读:
    DAY12 基本余数 运算符2
    DAY11 基本运算符
    DAY10 变量 常量 作用域
    DAY09 JAVA 类型转换
    DAY08 数据类型2
    DAY07 数据类型
    DAY06 JAVA基础语法1注释2标识符
    Beta冲刺集合
    Alpha冲刺集合
    高级软件工程实践总结
  • 原文地址:https://www.cnblogs.com/-wang-cheng/p/4889053.html
Copyright © 2011-2022 走看看