📣 VIP通行证夏日特惠 限时立减$68
查看: 1460| 回复: 5
跳转到指定楼层
上一主题 下一主题
收起左侧

[Leetcode] Merge Two Sorted Lists Submission Result: Memory Limit Exceeded

全局:

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

您需要 登录 才可以下载或查看附件。没有帐号?注册账号

x
/**
* Definition for singly-linked list.
* public class ListNode {
*     int val;
*     ListNode next;
*     ListNode(int x) { val = x; }
* }
*/
public class Solution {
    public ListNode mergeTwoLists(ListNode l1, ListNode l2) {
        //find the smallest num to be first
        if(l1 == null || l2 == null)
            return l1==null? l2:l1;
        //make t1.val < t2.val
        ListNode t1 = l1.val < l2.val ? l1 :l2;
        ListNode t2 = l1.val > l2.val ? l1 :l2;
        ListNode head = t1;
        while(t1.next != null && t2 !=null){
        if(t2.val < t1.next.val){
            ListNode temp = t1.next;
            t1.next=t2;
            t1 = t1.next;
            t2 = temp;
        }
        else
            t1= t1.next;
        }
        if(t1.next==null && t2!=null){
        t1.next = t2;
        }
        return head;
    }
}

代码如上,结果是Memory Limit Exceeded。
这个题的题干是这样的:
Merge two sorted linked lists and return it as a new list. The new list should be made by splicing together the nodes of the first two lists.

求解释问题出在哪里?
还有就是对于这类题,题干中并没有明确提出对于内存的要求的,应该什么原则去做呢?

上一篇:【LintCode】Binary Tree Maximum Path Sum我的逻辑似乎不对
下一篇:关于DP
全局:
这种题目如果出现memori exceed一般都是死循环了。ListNode t1 = l1.val < l2.val ? l1 :l2;这里改成ListNode t1 = l1.val <= l2.val ? l1 :l2;不过整体而言你这种写法不好,看看网上的写法吧。
回复

使用道具 举报

🔗
麻倉枼 2015-7-31 05:20:55 | 只看该作者
全局:
if(t2.val < t1.next.val){
            ListNode temp = t1.next;
            t1.next=t2;
            t1 = t1.next;
            t2 = temp;
        }

感觉这部分有错
回复

使用道具 举报

🔗
水逼一枚 2015-7-31 05:50:52 | 只看该作者
全局:
麻倉枼 发表于 2015-7-31 05:20
if(t2.val < t1.next.val){
            ListNode temp = t1.next;
            t1.next=t2;

他这部分没错哈,就是上面等于那里没处理,就是一开始如果两个序列的第一个元素都相等时就死循环了。
回复

使用道具 举报

🔗
pyx115 2015-7-31 05:54:52 | 只看该作者
全局:
这是我之前问的问题,看起来好像是一个题?可以参考下。
http://www.1point3acres.com/bbs/thread-136835-1-1.html
回复

使用道具 举报

🔗
麻倉枼 2015-7-31 06:18:01 | 只看该作者
全局:
水逼一枚 发表于 2015-7-30 16:50
他这部分没错哈,就是上面等于那里没处理,就是一开始如果两个序列的第一个元素都相等时就死循环了。

原来如此,哈哈,**还是少出意见好了。
受教
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册账号
隐私提醒:
  • ☑ 禁止发布广告,拉群,贴个人联系方式:找人请去🔗同学同事飞友,拉群请去🔗拉群结伴,广告请去🔗跳蚤市场,和 🔗租房广告|找室友
  • ☑ 论坛内容在发帖 30 分钟内可以编辑,过后则不能删帖。为防止被骚扰甚至人肉,不要公开留微信等联系方式,如有需求请以论坛私信方式发送。
  • ☑ 干货版块可免费使用 🔗超级匿名:面经(美国面经、中国面经、数科面经、PM面经),抖包袱(美国、中国)和录取汇报、定位选校版
  • ☑ 查阅全站 🔗各种匿名方法

本版积分规则

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