近期论坛无法登录的解决方案


一亩三分地论坛

 找回密码
 获取更多干活,快来注册

一亩三分地官方iOS手机应用下载
查看: 1770|回复: 2
收起左侧

[树/链表/图] leetcode 19 谁能用递归解决一下

[复制链接] |试试Instant~ |关注本帖
111180611 发表于 2016-1-23 07:19:47 | 显示全部楼层 |阅读模式

注册一亩三分地论坛,查看更多干货!

您需要 登录 才可以下载或查看,没有帐号?获取更多干活,快来注册

x
Given a linked list, remove the nth node from the end of list and return its head.
我自己也用递归写了, 但是当删除最后一个节点的时候有点麻烦,不知道大家这个题用递归怎么写
xhuaoe 发表于 2016-1-23 12:36:46 | 显示全部楼层
关注一亩三分地公众号:
Warald_一亩三分地
/**
* Definition for singly-linked list.
* struct ListNode {
*     int val;
*     ListNode *next;
*     ListNode(int x) : val(x), next(NULL) {}
* };
*/
class Solution {
public:
    ListNode* removeNthFromEnd(ListNode* head, int n) {
        ListNode _newHead(0);
        _newHead.next = head;
        countAndRemove(&_newHead, n);
        return _newHead.next;
    }
private:
    int countAndRemove(ListNode* head, int n) {
        if (head == nullptr) {
            return 0;
        }
        int s = countAndRemove(head->next, n);
        if (s == n) {
            head->next = head->next->next;
        }
        return s + 1;
    }
};
回复 支持 3 反对 0

使用道具 举报

 楼主| 111180611 发表于 2016-1-24 02:42:11 | 显示全部楼层
关注一亩三分地微博:
Warald
xhuaoe 发表于 2016-1-23 12:36
/**
* Definition for singly-linked list.
* struct ListNode {

Thank you so much!
回复 支持 反对

使用道具 举报

本版积分规则

关闭

一亩三分地推荐上一条 /5 下一条

手机版|小黑屋|一亩三分地论坛声明

custom counter

GMT+8, 2017-6-25 01:42

Powered by Discuz! X3

© 2001-2013 Comsenz Inc. Design By HUXTeam

快速回复 返回顶部 返回列表