LeetCode面试题02.03. 删除中间节点

142 views

题目

实现一种算法,删除单向链表中间的某个节点(即不是第一个或最后一个节点),假定你只能访问该节点。

示例:

输入:单向链表a->b->c->d->e->f中的节点c
结果:不返回任何数据,但该链表变为a->b->d->e->f

来源:力扣(LeetCode)
链接:https://leetcode-cn.com/problems/delete-middle-node-lcci
著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。

解答

/**
 * Definition for singly-linked list.
 * public class ListNode {
 *     int val;
 *     ListNode next;
 *     ListNode(int x) { val = x; }
 * }
 */
class Solution {
    public void deleteNode(ListNode node) {
        node.val = node.next.val;
        node.next = node.next.next;
    }
}

要点
本题比较简单,考察链表的原理。
题目做了一些限定,比如不是第一个节点,也不是最后一个节点,简化了题目。
使用Java来答题时,不需要考虑内存释放相关的操作。



若非注明,均为原创,欢迎转载,转载请注明来源:LeetCode面试题02.03. 删除中间节点

关于 JackieAtHome

基层程序员,八年之后重新启航

此条目发表在 Java, LeetCode 分类目录,贴了 标签。将固定链接加入收藏夹。

发表评论

电子邮件地址不会被公开。 必填项已用*标注

Protected with IP Blacklist CloudIP Blacklist Cloud