欧美一区二区三区老妇人-欧美做爰猛烈大尺度电-99久久夜色精品国产亚洲a-亚洲福利视频一区二区

Java有序鏈表如何合并

這篇文章主要講解了“Java有序鏈表如何合并”,文中的講解內(nèi)容簡單清晰,易于學(xué)習(xí)與理解,下面請大家跟著小編的思路慢慢深入,一起來研究和學(xué)習(xí)“Java有序鏈表如何合并”吧!

網(wǎng)站建設(shè)哪家好,找成都創(chuàng)新互聯(lián)公司!專注于網(wǎng)頁設(shè)計(jì)、網(wǎng)站建設(shè)、微信開發(fā)、小程序開發(fā)、集團(tuán)企業(yè)網(wǎng)站建設(shè)等服務(wù)項(xiàng)目。為回饋新老客戶創(chuàng)新互聯(lián)還提供了連云免費(fèi)建站歡迎大家使用!

問題

將兩個(gè)升序鏈表合并為一個(gè)新的升序鏈表并返回。新鏈表是通過拼接給定的兩個(gè)鏈表的所有節(jié)點(diǎn)組成的。

示例 1:

Java有序鏈表如何合并

輸入:l1 = [1,2,4], l2 = [1,3,4]
輸出:[1,1,2,3,4,4]

示例二:

<strong>輸入:</strong>l1 = [], l2 = []
<strong>輸出:</strong>[]

示例 3:

輸入:l1 = [], l2 = [0]
輸出:[0]

思路

版本一
  • 新建一個(gè)空的鏈表 nList

  • 在兩個(gè)鏈表(l1,l2)都不為空的情況下,比較兩個(gè)鏈表的第一個(gè)元素的值的大小,取出最小的加入到新鏈表當(dāng)中,然后小鏈表的頭指針指向下一位,并且nList的指針也指向下一位

  • 如果兩個(gè)鏈表還都不為空,繼續(xù)循環(huán)

  • 如果兩個(gè)鏈表有一個(gè)為空,那么將不為空的鏈表拼接到nList后邊

  • 最后返回 nList 的next 作為新鏈表的頭結(jié)點(diǎn)

版本二
  • 首先判斷兩個(gè)鏈表是否為空,為空直接返回空鏈表。不為空的繼續(xù)向下走

  • 判斷 l1 和 l2的頭結(jié)點(diǎn)誰更小,則將這個(gè)節(jié)點(diǎn)保存為頭結(jié)點(diǎn),后邊的節(jié)點(diǎn)一次拼接在該節(jié)點(diǎn)上邊。

  • 后邊思路同版本一

答案

版本一

新建一個(gè)節(jié)點(diǎn),將原來的鏈表都傳到新的鏈表當(dāng)中

public ListNode mergeTwoLists(ListNode list1, ListNode list2) {
    ListNode head = new ListNode(-1);
    ListNode   = head;
    while (list1 != null && list2 != null) {
        boolean b = list1.val <= list2.val;
        all.next = b ? list1 : list2;
        if (b) list1 = list1.next;
        else list2 = list2.next;
        all = all.next;
    }
    all.next = list1 != null ? list1 : list2;
    return head.next;
}
版本二

從原來的鏈表中選擇出來一個(gè)進(jìn)行整合,不適用任何新的內(nèi)存

public ListNode mergeTwoLists(ListNode list1, ListNode list2) {
    if (list1 == null || list2 == null) {
        return list1 == null ? list2 : list1;
    }
    ListNode head = list1.val <= list2.val ? list1 : list2;
    if (list1.val <= list2.val)
        list1 = list1.next;
    else
        list2 = list2.next;
    ListNode tmp = head;
    while (list1 != null && list2 != null) {
        boolean b = list1.val <= list2.val;
        tmp.next = b ? list1 : list2;
        if (b) list1 = list1.next;
        else list2 = list2.next;
        tmp = tmp.next;
    }
    tmp.next = list1 != null ? list1 : list2;
    return head;
}

感謝各位的閱讀,以上就是“Java有序鏈表如何合并”的內(nèi)容了,經(jīng)過本文的學(xué)習(xí)后,相信大家對Java有序鏈表如何合并這一問題有了更深刻的體會(huì),具體使用情況還需要大家實(shí)踐驗(yàn)證。這里是創(chuàng)新互聯(lián),小編將為大家推送更多相關(guān)知識點(diǎn)的文章,歡迎關(guān)注!

當(dāng)前名稱:Java有序鏈表如何合并
URL鏈接:http://chinadenli.net/article30/iegjpo.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供外貿(mào)建站全網(wǎng)營銷推廣、品牌網(wǎng)站設(shè)計(jì)、Google品牌網(wǎng)站制作、建站公司

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)

搜索引擎優(yōu)化
欧美日本亚欧在线观看| 大香蕉久久精品一区二区字幕| 狠狠做深爱婷婷久久综合| 五月婷婷欧美中文字幕| 国产精品视频第一第二区| 四十女人口红哪个色好看| 真实国产乱子伦对白视频不卡| 国产日韩在线一二三区| 亚洲精品一区二区三区免| 少妇被粗大进猛进出处故事| 久久综合亚洲精品蜜桃| 国产精品午夜性色视频| 久七久精品视频黄色的| 欧美日韩综合在线精品| 中文字幕无线码一区欧美| 国产一区欧美一区日本道| 国产一区二区精品丝袜| 亚洲欧美日韩中文字幕二欧美| 国产精品十八禁亚洲黄污免费观看 | 精品人妻一区二区三区免费| 久久精品中文字幕人妻中文| 区一区二区三中文字幕| 搡老妇女老熟女一区二区| 日本男人女人干逼视频| 九七人妻一区二区三区| 亚洲妇女黄色三级视频| 麻豆看片麻豆免费视频| 色哟哟哟在线观看视频| 欧美人与动牲交a精品| 欧美熟妇喷浆一区二区| 在线免费国产一区二区| 国产美女精品人人做人人爽| 最好看的人妻中文字幕| 亚洲乱码av中文一区二区三区| 国产又大又黄又粗又免费| 老熟女露脸一二三四区| 国产日韩综合一区在线观看| 欧美日韩在线观看自拍| 一区二区在线激情视频| 九九热精彩视频在线免费| 国产精品一区二区三区黄色片|