uup_lmm 2021-02-09 23:17 采纳率: 87.5%
浏览 92
已采纳

leetcode-160 链表相交,无相交的情况怎么写测试用例

class Solution {
    public static class ListNode {
        int val;
        ListNode next;
        ListNode(int x) {
            val = x;
            next = null;
        }
    }

    public static ListNode getIntersectionNode(ListNode headA, ListNode headB) {
        if (headA == null || headB == null) return null;
        ListNode pA = headA, pB = headB;
        while (pA != pB) {
            pA = pA == null ? headB : pA.next;
            pB = pB == null ? headA : pB.next;
        }
        return pB;
    }

//该测试用例只能覆盖有本来就有相交部分的情况,如果本来不想交的情况,会报空指针异常。比如[1,2.3]和[4,5]
    public static void main(String[] args) {
        //定义相交后的链表C
        ListNode C = new ListNode(3);
        C.next = new ListNode(4);

        //定义原有链表A,并且将A和C拼接上
        ListNode A = new ListNode(1);
        A.next  = new ListNode(2);
        A.next.next = C;
        //定义原有链表B,并且把B和C拼接上
        ListNode B = new ListNode(5);
        B.next = C;

        System.out.println(getIntersectionNode(A, B).val);

    }
}
  • 写回答

1条回答 默认 最新

  • IT-猕猴桃 2021-02-10 15:22
    关注

    无相交的情况,方法getIntersectionNode的返回值为null,所以抛出空指针异常

    你可以先判断方法getIntersectionNode的返回值,不为空输出值,为空输出该值为空

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 全部备份安卓app数据包括密码,可以复制到另一手机上运行
  • ¥15 Python3.5 相关代码写作
  • ¥20 测距传感器数据手册i2c
  • ¥15 RPA正常跑,cmd输入cookies跑不出来
  • ¥15 求帮我调试一下freefem代码
  • ¥15 matlab代码解决,怎么运行
  • ¥15 R语言Rstudio突然无法启动
  • ¥15 关于#matlab#的问题:提取2个图像的变量作为另外一个图像像元的移动量,计算新的位置创建新的图像并提取第二个图像的变量到新的图像
  • ¥15 改算法,照着压缩包里边,参考其他代码封装的格式 写到main函数里
  • ¥15 用windows做服务的同志有吗