1.删除倒数链表

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-oJyNayNI-1577510920393)(picture/image-20191228132752118.png)]



public class Demo42 {
    /**
     * Definition for singly-linked list.
     * public class ListNode {
     *     int val;
     *     ListNode next;
     *     ListNode(int x) { val = x; }
     * }
     */
     private class ListNode {
        int val;
        ListNode next;

        ListNode(int x) {
            val = x;
        }

    }
    public ListNode removeNthFromEnd(ListNode head, int n) {
        List<ListNode> listNodes = new ArrayList<>();
        int count = 0;
        ListNode listNode = head;
        while (listNode != null){
            count ++;
            listNodes.add(listNode);
            listNode = listNode.next;
        }
        if (count == 1){ // 只有一个数
            return null;
        }

        if (count - n == 0){ // 删除头结点
            return head.next;
        }

        if (count - n + 1 == listNodes.size()){ // 删除尾节点
            listNodes.get(count-2).next = null;
            return head;
        }

        listNodes.get(count - n - 1).next = listNodes.get(count - n + 1); // 删除中间节点
        return head;
    }
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值