日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

LeetCode: Merge k Sorted Lists

發布時間:2023/12/1 编程问答 24 豆豆
生活随笔 收集整理的這篇文章主要介紹了 LeetCode: Merge k Sorted Lists 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

自己寫的太復雜了,一開始想的是給開始的lists頭們排序,然后從這個序列的第一個抽出來,然后再重新用二分法進行排序,不過這個方法large超時了,看了網上的發現還是用很土地方法用一個for循環從前兩個開始merge到最后,不知道為什么自己把這個想這么復雜。

1 /** 2 * Definition for singly-linked list. 3 * struct ListNode { 4 * int val; 5 * ListNode *next; 6 * ListNode(int x) : val(x), next(NULL) {} 7 * }; 8 */ 9 class Solution { 10 public: 11 ListNode *merge(ListNode *p, ListNode *q) { 12 if (!p) return q; 13 if (!q) return p; 14 ListNode *ret = NULL; 15 ListNode *reti; 16 while (p && q) { 17 if (!ret) { 18 ret = new ListNode(min(p->val, q->val)); 19 reti = ret; 20 if (p->val < q->val) p = p->next; 21 else q = q->next; 22 } 23 else { 24 ListNode *tmp = new ListNode(min(p->val, q->val)); 25 ret->next = tmp; 26 ret = ret->next; 27 if (p->val < q->val) p = p->next; 28 else q = q->next; 29 } 30 } 31 if (!p) ret->next = q; 32 if (!q) ret->next = p; 33 return reti; 34 } 35 ListNode *mergeKLists(vector<ListNode *> &lists) { 36 // Start typing your C/C++ solution below 37 // DO NOT write int main() function 38 if (!lists.size()) return NULL; 39 ListNode *ret = lists[0]; 40 for (int i = 1; i < lists.size(); i++) ret = merge(ret, lists[i]); 41 return ret; 42 } 43 };

?推薦下面這個更符合面試的代碼

1 /** 2 * Definition for singly-linked list. 3 * struct ListNode { 4 * int val; 5 * ListNode *next; 6 * ListNode(int x) : val(x), next(NULL) {} 7 * }; 8 */ 9 struct cmp { 10 bool operator()(ListNode *a, ListNode *b) { 11 return a->val > b->val; 12 } 13 }; 14 class Solution { 15 public: 16 ListNode *mergeKLists(vector<ListNode *> &lists) { 17 priority_queue<ListNode*, vector<ListNode*>, cmp> S; 18 if (lists.size() == 0) return NULL; 19 for (int i = 0; i < lists.size(); i++) { 20 if (lists[i]) S.push(lists[i]); 21 } 22 ListNode *ans = NULL; 23 ListNode *p = ans; 24 while (!S.empty()) { 25 ListNode *tmp = S.top(); 26 if (!ans) { 27 ans = tmp; 28 p = ans; 29 } 30 else { 31 p->next = tmp; 32 p = p->next; 33 } 34 if (!tmp->next) S.pop(); 35 else { 36 tmp = tmp->next; 37 S.pop(); 38 S.push(tmp); 39 } 40 } 41 return ans; 42 } 43 };

?

轉載于:https://www.cnblogs.com/yingzhongwen/archive/2013/04/09/3010533.html

總結

以上是生活随笔為你收集整理的LeetCode: Merge k Sorted Lists的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 亚洲毛片在线免费观看 | 香蕉视频2020 | 一级黄色免费大片 | 无码国产精品一区二区免费16 | 超碰碰碰碰| 中国女人毛片 | 国产午夜精品久久久久久久 | 黄色片成人 | 三级黄色免费 | 日韩精品久久久 | 樱花电影最新免费观看国语版 | 国产精品毛片久久久久久 | 国产精品一级 | 香港日本韩国三级网站 | 欧美精品啪啪 | 国产日韩精品一区二区三区 | 欧美一区精品 | 欧美精品一区二区三区三州 | 亚洲国产精品久久 | 久草视频免费在线观看 | 一边摸一边做爽的视频17国产 | 欧美经典一区二区三区 | 成人拍拍视频 | 久久久123 | 久在线观看 | 国产欧美视频一区二区 | 中文文字幕一区二区三三 | 91资源在线视频 | 亚洲欧美日韩免费 | 99爱国产 | 手机av在线播放 | 日韩视频一区在线观看 | 国内爆初菊对白视频 | 中文字幕福利 | 中国少妇做爰全过程毛片 | 黑人巨大精品 | 视频在线观看免费大片 | 波多野结衣丝袜 | 蜜桃视频在线观看一区二区 | 男女日批在线观看 | 久久逼逼 | 国产电影一区在线观看 | 精品99久久久久成人网站免费 | 性生活毛片 | 99reav| 久久久久一区二区精码av少妇 | 91免费国产视频 | 好男人在线视频www 亚洲福利国产 | av网站免费在线播放 | 国产一级免费视频 | av免播放器 | 亚洲欧洲在线视频 | 在线污视频 | 做爰无遮挡三级 | 国产高潮国产高潮久久久91 | 日韩影视一区二区三区 | 伊人www| 国产又粗又硬又长又爽的演员 | 黄色小网站在线观看 | 国产精品一区二区在线看 | 黄色片免费在线播放 | 国产精品麻豆成人av电影艾秋 | 欧美成人va| 日韩一区二区三区在线看 | 日韩电影一区二区三区四区 | 日韩影视在线 | 用舌头去添高潮无码视频 | 住在隔壁的她动漫免费观看全集下载 | 高潮流白浆在线观看 | 日本黄xxxxxxxxx100 | 综合婷婷 | 欧美日b片 | 日本一区不卡在线观看 | 中国女人毛片 | 国产永久在线观看 | 日本十八禁视频无遮挡 | 欧美顶级黄色大片免费 | 亚洲色图吧 | 97福利视频 | 国产欧美视频一区 | 欧美激情视频一区二区三区不卡 | 亚洲爱视频 | 狠狠躁夜夜躁人人爽天天高潮 | 超碰2025 | 国产12页 | 日韩欧美一级片 | 国产高清日韩 | 国产精品午夜久久 | 国产欧美日韩综合精品一区二区 | 怡红院最新网址 | 国产第一区第二区 | 国产强被迫伦姧在线观看无码 | 国产黄色一级大片 | 国模婷婷 | 91精品一区二区三区在线观看 | 亚洲精品一区二区三区区别 | 国内成人免费视频 | www.成人网.com | jizz在线观看视频 |