【问题标题】:Merge two linked lists Order [closed]合并两个链表订单[关闭]
【发布时间】:2015-05-25 23:35:14
【问题描述】:

我有两个已排序的链表,需要合并它们。

l1 = [a] -> [b] -> [c]

l2 = [b] -> [f]

l1plus2 = [a] -> [b] -> [c] -> [f]

这是什么顺序?

【问题讨论】:

  • 请编辑您的帖子以解释“订单”是什么意思。到目前为止的答案假设“时间复杂度”......但目前还不清楚是否符合您的目标。

标签: list merge


【解决方案1】:

大概是升序。 :) 开玩笑。

如果您的意思是“数量级”,则以下解决方案将是 O(m+n) 或 O(max(m,n)),其中 m 是 l1.length,n 是 l2.length。

算法:保留一个指向每个链表的指针,逐个遍历它们,然后添加两个元素中较小的一个。如果元素相同,则添加一次并步进两个指针。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2016-05-06
    • 2021-02-26
    • 2017-08-23
    • 1970-01-01
    • 1970-01-01
    • 2014-04-26
    相关资源
    最近更新 更多