码迷,mamicode.com
首页 > 其他好文 > 详细

leetcode problem :23. Merge k Sorted Lists

时间:2017-11-27 23:49:31      阅读:304      评论:0      收藏:0      [点我收藏+]

标签:while   index   amp   div   class   --   highlight   public   solution   

class Solution {
public:
    ListNode* mergeKLists(vector<ListNode*>& lists) {
        ListNode* head = NULL;
        ListNode* current = NULL;
        for (int i = 0; i < lists.size(); ++i){
            if (!lists[i]){
                lists.erase(lists.begin()+i);
                --i;
            }
        }
        while (lists.size()){
            int min_value=lists[0]->val;
            int min_index = 0;
            for (int i = 1; i < lists.size(); ++i){
                if (lists[i]->val < min_value){
                    min_index = i;
                    min_value = lists[i]->val;
                }
            }
            if (head == NULL){
                head = lists[min_index];
                current = head;
            }
            else {
                current->next = lists[min_index];
                current = current->next;
            }
            lists[min_index] = lists[min_index]->next;
            if (!lists[min_index]){
                lists.erase(lists.begin()+min_index);
            }
        }
        return head;
    }
};

  

leetcode problem :23. Merge k Sorted Lists

标签:while   index   amp   div   class   --   highlight   public   solution   

原文地址:http://www.cnblogs.com/nosaferyao/p/7906255.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!