タイトル:Kマージソートリスト
元の質問へのリンク:マージKソートリスト
この質問私の考えはこれです:すべてのリストを通じて、データ・フィールド内のすべてのノードは、ベクター中に存在し、その後、ベクトル要素は、リンクリストを作成するために、最後のベクトルに従ってソートされていることができます。
コードは以下の通りであります:
/**
* Definition for singly-linked list.
* struct ListNode {
* int val;
* ListNode *next;
* ListNode(int x) : val(x), next(NULL) {}
* };
*/
class Solution {
public:
ListNode* mergeKLists(vector<ListNode*>& lists) {
vector<int> merge;
for(int i = 0; i < lists.size(); i++)
{
ListNode *p = lists[i];
while(p != NULL)
{
merge.push_back(p->val);
p = p->next;
}
}
sort(merge.begin(), merge.end());
ListNode *head = new ListNode();
ListNode *p = head;
for(int i = 0; i < merge.size(); i++)
{
p->next = new ListNode(merge[i]);
p = p->next;
}
return head->next;
}
};
結果を提出してください:
余談:
人類は常に自分自身の人生から選ばれた、別の彼が選択しなかった命、羨望、遺憾の意を参照してください。
-川村の活力「この世界は猫が消えている場合。」