【问题标题】:Can we use a linear search instead of a binary search to find insertion position, without incurring any significant runtime penalty?我们可以使用线性搜索而不是二分搜索来查找插入位置,而不会产生任何显着的运行时间损失吗?
【发布时间】:2020-09-01 19:26:06
【问题描述】:

在解决 Leetcode 上的问题时https://leetcode.com/problems/find-median-from-data-stream 我遇到了一种插入排序方法。但是,弹出测验提到使用线性搜索而不是二分搜索。我想知道为什么会这样,权衡取舍是什么?

【问题讨论】:

    标签: binary-search insertion-sort


    【解决方案1】:

    我的猜测是,如果您正在搜索数字 i,而不是从头开始搜索,您可以从索引 i 开始搜索。但这只有在数字不包含大量重复项时才有效。

    【讨论】:

      【解决方案2】:

      这个问题在线性搜索和二分搜索中都将花费 O(n),所以只做更简单的线性搜索。

      【讨论】:

        猜你喜欢
        • 2020-09-23
        • 1970-01-01
        • 2014-04-28
        • 2014-02-21
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2017-08-05
        • 2019-04-09
        相关资源
        最近更新 更多