题解 | #从尾到头打印链表#

从尾到头打印链表

http://www.nowcoder.com/practice/d0267f7f55b3412ba93bd35cfa8e8035

第一题
/**
*  struct ListNode {
*        int val;
*        struct ListNode *next;
*        ListNode(int x) :
*              val(x), next(NULL) {
*        }
*  };
*/
class Solution {
public:
    vector<int> printListFromTailToHead(ListNode* head) {
        
        // 这些编程网站一直喜欢搞的边界问题
        // 有一个head=[]
        // 这种边界问题就是测试那种工作的人 要研究的
        if(head == NULL)
            return vector<int>(0);
        // 保存头结点 后面 第一次遍历知道长度 就走了
        ListNode *temp;
        temp=head;
        int len=0;
        // 知道长度
        while (!head->next==NULL){
            head=head->next;
            len++;
        }
        head=temp; 
        // 定义vector数字的代码用来回答
        vector<int> ans(len+1);
        // 反向检查 填充回数组
        for (int i =len;i>=0;i--){
            ans[i]=head->val;
            head=head->next;
        }
        return ans;
//         // 这些编程网站一直喜欢搞的边界问题
//         // 有一个head=[]
//         // 这种边界问题就是测试那种工作的人 要研究的
//         if(head == NULL)
//             return vector<int>(0);
//         vector<int> ans;
//         while (!head->next==NULL){
//             ans.insert(ans.begin(),head->val);
//             head=head->next;
//         }
//         ans.insert(ans.begin(),head->val);
//         return ans;
    }
};
题解 文章被收录于专栏

一遍做剑指offer 一边保存做题步骤 并附带详细注释哦

全部评论

相关推荐

看到好多帖子双9都kuku挂,双9都挂,那我还投啥啊
_追梦旅人_:同学考虑我司不,我们正在秋招,可在我主页看岗位,感兴趣可直接投递~
点赞 评论 收藏
分享
驼瑞驰_招募评论官版...:点击就挂,露头就秒
点赞 评论 收藏
分享
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务