gpt4 book ai didi

c++ - 数组中最小的 2 个数

转载 作者:太空狗 更新时间:2023-10-29 20:03:16 27 4
gpt4 key购买 nike

问题很简单(答案很可能):如何找到数组中最小的 2 个数字?

  for ( i = 1; i <= n ; i++){
if(v[i] < maxim)
maxim = v[i];
}
cout << maxim;

这是我唯一想到的,但它只显示了最低的数字,而不是 2 个最低的数字

最佳答案

如果你的数组可能会改变,你可以使用std::partial_sort :

std::partial_sort(v, v+2, v+n);

那么,v[0]v[1]就是v的两个最小值。

如果更改数组不是有意的,或者应该避免,std::partial_sort_copy是你的 friend 。引入一个包含两个元素的新数组,应将最小值写入其中:

int minima[2];
std::partial_sort_copy(v, v+n, minima, minima+2);

(请相应地更改数组minima的类型。我不知道你的数组v的类型。)

要使这些功能可用,您必须包含以下文件:

#include <algorithm>

关于c++ - 数组中最小的 2 个数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30423805/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com