【Google-onsite面经】Merge Two Sorted List

题目来源

时间是2016年7月21日,MTV onsite,第三轮,第一题。

题目内容

参考leetcode的第21题,要求很简单,将两个排好序的链表合并成一个新的排好序链表。1->2->5和3->4->6两个输入值,得到1->2->3->4->5->6。这题简单的就像小时候动画片结束之后的有奖问答。

做法

两个链表各起一个指针,再建一个head指针,用来寻找下一个排好序的值。必须要说,这题需要对链表这种结构的熟悉,动画片的有奖竞猜也是要看动画片的。

code

public class Solution {    public ListNode mergeTwoLists(ListNode l1, ListNode l2) {        //做个dummy node,防止两个链表里面有空的。        ListNode dummy = new ListNode(0);        ListNode head = dummy;        //分别建两个指针,指向l1和l2,在后来可以预防链表出界。        ListNode p1 = l1;        ListNode p2 = l2;        while(p1 != null && p2 != null){            //按照大小找下一个节点。            if(p1.val 1->3,2->4的组合。然后可以验证空的node能否跑通,就是l1是null,或l2是null,或两个都是null。还有一个链表很小,另一个很大。比如1->2,5->6->7->8这样。这些差不多了吧。## 备注其实这道题就是用来开启Google面经这个标签的,准备今年9月投一下Google,尽早准备。我是今年秋天要放飞理想的有志青年,面对众多IT公司对转行者的歧视,你们尽管一起上,何惧操,随便射。#Google、面试经验、listnode、链表#


本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!

相关文章

立即
投稿

微信公众账号

微信扫一扫加关注

返回
顶部