[swift] LeetCode 23. Merge k Sorted Lists

栏目: Swift · 发布时间: 7年前

Merge k sorted linked lists and return it as one sorted list. Analyze and describe its complexity.

Example:

Input:[ 1->4->5,   1->3->4,   2->6 ]

Output:1->1->2->3->4->4->5->6

func mergeKLists(_ lists: [ListNode?]) -> ListNode? {
    var i = 0, j = 0, fl = lists.compactMap({$0}), n = fl.count, p: ListNode?
    if n < 1 { return nil }
 
    var arr = Array(repeating: 0, count: 256*256)
    while i < n {
        p = fl[i]; i += 1
        while let p1 = p {
            arr[j] = p1.val
            p = p1.next; j += 1
            if p == nil, i < n {
                p1.next = fl[i]
            }
        }
    }
 
    arr = Array(arr[..<j]).sorted()
 
    i = 0; p = fl[0]
    while let q = p, i < j {
        q.val = arr[i]
        p = q.next; i += 1
    }
 
    return fl[0]
}
[swift] LeetCode 23. Merge k Sorted Lists [swift] LeetCode 23. Merge k Sorted Lists (随着网站访问量的激增,服务器配置只得一再升级以维持网站不“404 Not Found”,所以网站的维护费用也在不断上涨……(目前的阿里云服务器ECS+云数据库RDS+域名购买+七牛云的费用是2200元/年),为了能不放弃该网站,所以我又把打赏链接放上来啦~所有打赏金额都会被记账并投入博客维护中,感谢厚爱,多多关照~)

以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

Ajax设计模式

Ajax设计模式

Michael Mahemoff / 杨仁和 / 电子工业出版社 / 2007-5 / 78.00元

★本书荣获LinuxWorld Linux Journal2006年Editors' Choice awards。    ★绝好的一本ajax 高级读物,建议 每个web 程序员都需要买一本,了解什么是真正的好的web设计--网友   [精彩试读一]   [精彩试读二] 本书是一本关于复杂Ajax应用的整体架构设计......一起来看看 《Ajax设计模式》 这本书的介绍吧!

HTML 压缩/解压工具
HTML 压缩/解压工具

在线压缩/解压 HTML 代码

在线进制转换器
在线进制转换器

各进制数互转换器

HEX HSV 转换工具
HEX HSV 转换工具

HEX HSV 互换工具