国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

2023-08-12 LeetCode每日一題(合并 K 個升序鏈表)

這篇具有很好參考價值的文章主要介紹了2023-08-12 LeetCode每日一題(合并 K 個升序鏈表)。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

2023-08-12每日一題

一、題目編號

23. 合并 K 個升序鏈表

二、題目鏈接

點擊跳轉到題目位置

三、題目描述

給你一個鏈表數(shù)組,每個鏈表都已經按升序排列。

請你將所有鏈表合并到一個升序鏈表中,返回合并后的鏈表。

示例 1:
2023-08-12 LeetCode每日一題(合并 K 個升序鏈表),LeetCode每日一題,leetcode,算法,數(shù)據結構

示例 2:
2023-08-12 LeetCode每日一題(合并 K 個升序鏈表),LeetCode每日一題,leetcode,算法,數(shù)據結構

示例 3:
2023-08-12 LeetCode每日一題(合并 K 個升序鏈表),LeetCode每日一題,leetcode,算法,數(shù)據結構文章來源地址http://www.zghlxwxcb.cn/news/detail-644773.html

四、解題代碼

/**
 * Definition for singly-linked list.
 * struct ListNode {
 *     int val;
 *     ListNode *next;
 *     ListNode() : val(0), next(nullptr) {}
 *     ListNode(int x) : val(x), next(nullptr) {}
 *     ListNode(int x, ListNode *next) : val(x), next(next) {}
 * };
 */
class Solution {
public:
    ListNode* mergeTwoLists(ListNode *a, ListNode *b) {
        if ((!a) || (!b)) return a ? a : b;
        ListNode head, *tail = &head, *aPtr = a, *bPtr = b;
        while (aPtr && bPtr) {
            if (aPtr->val < bPtr->val) {
                tail->next = aPtr; aPtr = aPtr->next;
            } else {
                tail->next = bPtr; bPtr = bPtr->next;
            }
            tail = tail->next;
        }
        tail->next = (aPtr ? aPtr : bPtr);
        return head.next;
    }

    ListNode* merge(vector <ListNode*> &lists, int l, int r) {
        if (l == r) return lists[l];
        if (l > r) return nullptr;
        int mid = (l + r) >> 1;
        return mergeTwoLists(merge(lists, l, mid), merge(lists, mid + 1, r));
    }

    ListNode* mergeKLists(vector<ListNode*>& lists) {
        return merge(lists, 0, lists.size() - 1);
    }
};



五、解題思路

到了這里,關于2023-08-12 LeetCode每日一題(合并 K 個升序鏈表)的文章就介紹完了。如果您還想了解更多內容,請在右上角搜索TOY模板網以前的文章或繼續(xù)瀏覽下面的相關文章,希望大家以后多多支持TOY模板網!

本文來自互聯(lián)網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。如若轉載,請注明出處: 如若內容造成侵權/違法違規(guī)/事實不符,請點擊違法舉報進行投訴反饋,一經查實,立即刪除!

領支付寶紅包贊助服務器費用

相關文章

  • 【力扣每日一題】23. 合并 K 個升序鏈表 &暴力法-快排 & 8.12打卡

    【力扣每日一題】23. 合并 K 個升序鏈表 &暴力法-快排 & 8.12打卡

    合并 K 個升序鏈表 難度: 困難 描述: 給你一個鏈表數(shù)組,每個鏈表都已經按升序排列。 請你將所有鏈表合并到一個升序鏈表中,返回合并后的鏈表。 示例 1: 輸入:lists = [[1,4,5],[1,3,4],[2,6]] 輸出:[1,1,2,3,4,4,5,6] 解釋:鏈表數(shù)組如下: [ 1-4-5, 1-3-4, 2-6 ] 將它們合并到一個有序

    2024年02月13日
    瀏覽(17)
  • Leetcode-每日一題【1669.合并兩個鏈表】

    Leetcode-每日一題【1669.合并兩個鏈表】

    給你兩個鏈表?list1 和?list2?,它們包含的元素分別為?n 個和?m 個。 請你將?list1?中下標從 a 到 b 的全部節(jié)點都刪除,并將list2?接在被刪除節(jié)點的位置。 下圖中藍色邊和節(jié)點展示了操作后的結果: ? 請你返回結果鏈表的頭指針。 示例 1: 輸入: list1 = [0,1,2,3,4,5], a = 3, b

    2024年02月13日
    瀏覽(23)
  • 2023-08-28 LeetCode每日一題(插入區(qū)間)

    2023-08-28 LeetCode每日一題(插入區(qū)間)

    點擊跳轉到題目位置 給你一個 無重疊的 ,按照區(qū)間起始端點排序的區(qū)間列表。 在列表中插入一個新的區(qū)間,你需要確保列表中的區(qū)間仍然有序且不重疊(如果有必要的話,可以合并區(qū)間)。 示例 1: 示例 2: 示例 3: 示例 4: 示例 5: 提示: 0 = intervals.length = 10 4 interval

    2024年02月11日
    瀏覽(28)
  • 2023-08-01 LeetCode每日一題(英雄的力量)

    2023-08-01 LeetCode每日一題(英雄的力量)

    點擊跳轉到題目位置 給你一個下標從 0 開始的整數(shù)數(shù)組 nums ,它表示英雄的能力值。如果我們選出一部分英雄,這組英雄的 力量 定義為: i 0 ,i 1 ,… i k 表示這組英雄在數(shù)組中的下標。那么這組英雄的力量為 max(nums[i0],nums[i1] … nums[ik])2 * min(nums[i0],nums[i1] … nums[ik]) 。 請你

    2024年02月14日
    瀏覽(54)
  • 2023-07-08 LeetCode每日一題(三數(shù)之和)

    點擊跳轉到題目位置 給你一個整數(shù)數(shù)組 nums ,判斷是否存在三元組 [nums[i], nums[j], nums[k]] 滿足 i != j、i != k 且 j != k ,同時還滿足 nums[i] + nums[j] + nums[k] == 0 。請 你返回所有和為 0 且不重復的三元組。 **注意:**答案中不可以包含重復的三元組。 提示: 3 = nums.length = 3000 -10 5

    2024年02月13日
    瀏覽(26)
  • 2023-09-08 LeetCode每日一題(計算列車到站時間)

    2023-09-08 LeetCode每日一題(計算列車到站時間)

    點擊跳轉到題目位置 給你一個正整數(shù) arrivalTime 表示列車正點到站的時間(單位:小時),另給你一個正整數(shù) delayedTime 表示列車延誤的小時數(shù)。 返回列車實際到站的時間。 注意,該問題中的時間采用 24 小時制。 示例 1: 示例 2: 提示: 1 = arrivaltime 24 1 = delayedTime = 24 (1) 運用

    2024年02月09日
    瀏覽(20)
  • 2023-08-04 LeetCode每日一題(不同路徑 III)

    2023-08-04 LeetCode每日一題(不同路徑 III)

    點擊跳轉到題目位置 在二維網格 grid 上,有 4 種類型的方格: 1 表示起始方格。且只有一個起始方格。 2 表示結束方格,且只有一個結束方格。 0 表示我們可以走過的空方格。 -1 表示我們無法跨越的障礙。 返回在四個方向(上、下、左、右)上行走時,從起始方格到結束方

    2024年02月14日
    瀏覽(18)
  • (鏈表) 劍指 Offer 25. 合并兩個排序的鏈表 ——【Leetcode每日一題】

    (鏈表) 劍指 Offer 25. 合并兩個排序的鏈表 ——【Leetcode每日一題】

    難度:簡單 輸入兩個遞增排序的鏈表,合并這兩個鏈表并使新鏈表中的節(jié)點仍然是遞增排序的。 示例1: 輸入:1-2-4, 1-3-4 輸出:1-1-2-3-4-4 限制 : 0 = 鏈表長度 = 1000 注意:本題與 21. 合并兩個有序鏈表 相同 ??思路: 法一:遞歸 將該問題可以分解成子鏈表,只比較當前 l1 鏈

    2024年02月15日
    瀏覽(21)
  • 2023-08-17 LeetCode每日一題(切披薩的方案數(shù))

    點擊跳轉到題目位置 給你一個 rows x cols 大小的矩形披薩和一個整數(shù) k ,矩形包含兩種字符: ‘A’ (表示蘋果)和 ‘.’ (表示空白格子)。你需要切披薩 k-1 次,得到 k 塊披薩并送給別人。 切披薩的每一刀,先要選擇是向垂直還是水平方向切,再在矩形的邊界上選一個切

    2024年02月12日
    瀏覽(23)
  • 2023-08-10LeetCode每日一題(下降路徑最小和 II)

    2023-08-10LeetCode每日一題(下降路徑最小和 II)

    點擊跳轉到題目位置 給你一個 n x n 整數(shù)矩陣 grid ,請你返回 非零偏移下降路徑 數(shù)字和的最小值。 非零偏移下降路徑 定義為:從 grid 數(shù)組中的每一行選擇一個數(shù)字,且按順序選出來的數(shù)字中,相鄰數(shù)字不在原數(shù)組的同一列。 示例 1: 示例 2: 提示: n == grid.length == grid[i].

    2024年02月13日
    瀏覽(26)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領取紅包,優(yōu)惠每天領

二維碼1

領取紅包

二維碼2

領紅包