{"id":403,"date":"2025-09-18T19:16:20","date_gmt":"2025-09-18T11:16:20","guid":{"rendered":"https:\/\/heyingnian.com\/?p=403"},"modified":"2025-09-18T19:16:22","modified_gmt":"2025-09-18T11:16:22","slug":"%e5%90%88%e5%b9%b6-k-%e4%b8%aa%e5%8d%87%e5%ba%8f%e9%93%be%e8%a1%a8","status":"publish","type":"post","link":"https:\/\/heyingnian.com\/index.php\/2025\/09\/18\/%e5%90%88%e5%b9%b6-k-%e4%b8%aa%e5%8d%87%e5%ba%8f%e9%93%be%e8%a1%a8\/","title":{"rendered":"\u5408\u5e76 K \u4e2a\u5347\u5e8f\u94fe\u8868"},"content":{"rendered":"\n<h1 class=\"wp-block-heading\">\ud83d\udd17 \u5408\u5e76 K \u4e2a\u5347\u5e8f\u94fe\u8868<\/h1>\n\n\n\n<p>\u9898\u76ee\u6765\u6e90\uff1a<a target=\"_blank\" rel=\"noreferrer noopener\"><a href=\"https:\/\/leetcode.cn\/problems\/merge-k-sorted-lists\/description\/?envType=study-plan-v2&amp;envId=top-100-liked\" target=\"_blank\" rel=\"noopener\">23. \u5408\u5e76 K \u4e2a\u5347\u5e8f\u94fe\u8868 &#8211; \u529b\u6263\uff08LeetCode\uff09<\/a><\/a><\/p>\n\n\n\n<p>\ud83d\udccc \u9898\u76ee\u63cf\u8ff0<\/p>\n\n\n\n<p>\u7ed9\u4f60\u4e00\u4e2a\u94fe\u8868\u6570\u7ec4 <code>lists<\/code>\uff0c\u6bcf\u4e2a\u94fe\u8868\u4e2d\u7684\u8282\u70b9<strong>\u5df2\u6309\u5347\u5e8f\u6392\u5217<\/strong>\u3002<\/p>\n\n\n\n<p>\u8bf7\u5c06\u6240\u6709\u94fe\u8868<strong>\u5408\u5e76\u6210\u4e00\u4e2a\u5347\u5e8f\u94fe\u8868<\/strong>\u5e76\u8fd4\u56de\u5176\u5934\u8282\u70b9\u3002<\/p>\n\n\n\n<p>\u2705 \u793a\u4f8b\u89e3\u6790<\/p>\n\n\n\n<p>\u793a\u4f8b 1\uff1a<\/p>\n\n\n\n<p>\u8f93\u5165\uff1a<code>lists = [[1,4,5],[1,3,4],[2,6]]<\/code><br>\u8f93\u51fa\uff1a<code>[1,1,2,3,4,4,5,6]<\/code><br>\u89e3\u91ca\uff1a\u5408\u5e76\u4e09\u4e2a\u6709\u5e8f\u94fe\u8868 \u2192 \u6700\u7ec8\u5168\u5c40\u6709\u5e8f\u3002<\/p>\n\n\n\n<p>\u793a\u4f8b 2\uff1a<\/p>\n\n\n\n<p>\u8f93\u5165\uff1a<code>lists = []<\/code><br>\u8f93\u51fa\uff1a<code>[]<\/code><\/p>\n\n\n\n<p>\u793a\u4f8b 3\uff1a<\/p>\n\n\n\n<p>\u8f93\u5165\uff1a<code>lists = [[]]<\/code><br>\u8f93\u51fa\uff1a<code>[]<\/code><\/p>\n\n\n\n<p>\u26a0\ufe0f \u63d0\u793a<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><code>k == lists.length<\/code><\/li>\n\n\n\n<li><code>0 &lt;= k &lt;= 10\u2074<\/code><\/li>\n\n\n\n<li>\u6bcf\u4e2a\u94fe\u8868\u957f\u5ea6\u00a0<code>&lt;= 500<\/code><\/li>\n\n\n\n<li>\u8282\u70b9\u503c\u8303\u56f4\uff1a<code>[-10\u2074, 10\u2074]<\/code><\/li>\n\n\n\n<li>\u6240\u6709\u94fe\u8868\u5df2\u5347\u5e8f\u6392\u5217<\/li>\n\n\n\n<li>\u603b\u8282\u70b9\u6570\u00a0<code>&lt;= 10\u2074<\/code><\/li>\n<\/ul>\n\n\n\n<p>\ud83d\udca1 \u89e3\u6cd5\uff1a\u5206\u6cbb\u5f52\u5e76 \u2014\u2014 O(N log K) \u65f6\u95f4\uff0cO(log K) \u7a7a\u95f4<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>class Solution {\n    public ListNode mergeKLists(ListNode&#91;] lists) {\n        if (lists.length == 0) return null;\n        return split(lists, 0, lists.length - 1);\n    }\n\n    private ListNode split(ListNode&#91;] lists, int i, int j) {\n        if (i == j) return lists&#91;i];\n        int m = (i + j) >>> 1;\n        ListNode left = split(lists, i, m);\n        ListNode right = split(lists, m + 1, j);\n        return merge(left, right);\n    }\n\n    private ListNode merge(ListNode a, ListNode b) {\n        if (a == null) return b;\n        if (b == null) return a;\n        ListNode dummy = new ListNode(0), p = dummy;\n        while (a != null &amp;&amp; b != null) {\n            if (a.val &lt; b.val) {\n                p.next = a;\n                a = a.next;\n            } else {\n                p.next = b;\n                b = b.next;\n            }\n            p = p.next;\n        }\n        p.next = a != null ? a : b;\n        return dummy.next;\n    }\n}<\/code><\/pre>\n\n\n\n<p>\ud83d\udcca \u590d\u6742\u5ea6\u5206\u6790<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>\u65f6\u95f4\u590d\u6742\u5ea6\uff1aO(N log K)<\/strong>\n<ul class=\"wp-block-list\">\n<li>N\uff1a\u6240\u6709\u94fe\u8868\u8282\u70b9\u603b\u6570<\/li>\n\n\n\n<li>K\uff1a\u94fe\u8868\u4e2a\u6570<\/li>\n\n\n\n<li>\u6bcf\u5c42\u5408\u5e76\u603b\u8017\u65f6 O(N)\uff0c\u5171 log K \u5c42<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li><strong>\u7a7a\u95f4\u590d\u6742\u5ea6\uff1aO(log K)<\/strong>\n<ul class=\"wp-block-list\">\n<li>\u9012\u5f52\u8c03\u7528\u6808\u6df1\u5ea6\uff08\u5206\u6cbb\u6811\u9ad8\u5ea6\uff09<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n\n\n\n<p>\ud83e\udde9 \u89e3\u9898\u601d\u8def<\/p>\n\n\n\n<p>\u6838\u5fc3\u601d\u60f3\uff1a<strong>\u5206\u6cbb + \u4e24\u4e24\u5f52\u5e76<\/strong><\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li><strong>\u9012\u5f52\u5206\u6cbb<\/strong>\uff1a\n<ul class=\"wp-block-list\">\n<li>\u5c06 K \u4e2a\u94fe\u8868\u4e0d\u65ad\u4e8c\u5206\uff0c\u76f4\u5230\u53ea\u5269 1 \u4e2a\u94fe\u8868\uff08\u76f4\u63a5\u8fd4\u56de\uff09<\/li>\n\n\n\n<li>\u7136\u540e\u4e24\u4e24\u5411\u4e0a\u5408\u5e76<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li><strong>\u5408\u5e76\u6709\u5e8f\u94fe\u8868<\/strong>\uff1a\n<ul class=\"wp-block-list\">\n<li>\u590d\u7528\u7ecf\u5178\u201c\u5408\u5e76\u4e24\u4e2a\u6709\u5e8f\u94fe\u8868\u201d\u903b\u8f91<\/li>\n\n\n\n<li>\u4f7f\u7528\u54e8\u5175\u8282\u70b9\u7b80\u5316\u5934\u8282\u70b9\u5904\u7406<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li><strong>\u8fb9\u754c\u5904\u7406<\/strong>\uff1a\n<ul class=\"wp-block-list\">\n<li>\u7a7a\u6570\u7ec4 \u2192 \u8fd4\u56de null<\/li>\n\n\n\n<li>\u5355\u94fe\u8868 \u2192 \u76f4\u63a5\u8fd4\u56de<\/li>\n\n\n\n<li>\u7a7a\u94fe\u8868 \u2192 merge \u4e2d\u81ea\u52a8\u8df3\u8fc7<\/li>\n<\/ul>\n<\/li>\n<\/ol>\n","protected":false},"excerpt":{"rendered":"<p>\ud83d\udd17 \u5408\u5e76 K \u4e2a\u5347\u5e8f\u94fe\u8868 \u9898\u76ee\u6765\u6e90\uff1a23. \u5408\u5e76 K \u4e2a\u5347\u5e8f\u94fe\u8868 &#8211; \u529b\u6263\uff08LeetCode\uff09 \ud83d\udccc [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[12,38],"tags":[54,14,51],"class_list":["post-403","post","type-post","status-publish","format-standard","hentry","category-algorithm","category-linked_list","tag-divide_and_conquer","tag-algorithm","tag-linked_list"],"_links":{"self":[{"href":"https:\/\/heyingnian.com\/index.php\/wp-json\/wp\/v2\/posts\/403","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/heyingnian.com\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/heyingnian.com\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/heyingnian.com\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/heyingnian.com\/index.php\/wp-json\/wp\/v2\/comments?post=403"}],"version-history":[{"count":1,"href":"https:\/\/heyingnian.com\/index.php\/wp-json\/wp\/v2\/posts\/403\/revisions"}],"predecessor-version":[{"id":404,"href":"https:\/\/heyingnian.com\/index.php\/wp-json\/wp\/v2\/posts\/403\/revisions\/404"}],"wp:attachment":[{"href":"https:\/\/heyingnian.com\/index.php\/wp-json\/wp\/v2\/media?parent=403"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/heyingnian.com\/index.php\/wp-json\/wp\/v2\/categories?post=403"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/heyingnian.com\/index.php\/wp-json\/wp\/v2\/tags?post=403"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}