最有效地查找数组中的最小值

2023-12-08

数组中有N个值,其中最小的一个。如何最有效地找到最小值?


如果它们没有排序,你就不能做太多事情,只能查看每一个,这是 O(N),完成后你就会知道最小值。


伪代码:

small = <biggest value> // such as std::numerical_limits<int>::max
for each element in array:
    if (element < small)
        small = element

更好的方式提醒Ben对我来说就是用第一个元素初始化小:

small = element[0]
for each element in array, starting from 1 (not 0):
    if (element < small)
        small = element

上面的内容被包裹在算法标头为std::min_element.


如果您可以在添加项目时保持数组排序,那么查找它的复杂度将是 O(1),因为您可以将最小的放在前面。

这与数组一样好。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

最有效地查找数组中的最小值 的相关文章

随机推荐