在没有第二个变量的情况下获得数组的最大值?

大佬

有没有一种方法可以在不使用嵌套循环/第二个变量的情况下找到数组的最大值?可能也可能不使用交换,这取决于前 2 个要求的可能性/不可能

干杯!

这也是我一直在努力思考的一个问题,因为我之前在采访中听说过这个问题,但我没有找到解决方案!

编辑:不使用任何函数,第二个变量是指我们通常使用的“max”变量,只允许使用循环来遍历数组元素,即使我们更改,我们也只能使用数组元素本身他们所有的价值都是为了最大限度地利用它。

斯尼格法迪蒙格斯

当我收到这个问题时,在一次采访中,面试官不允许排序,因为它要么改变了源数组,要么强迫你排序到一个临时数组中。他对循环变量犹豫不决(尽管他不反对跟踪数组的大小 - 看图)。他还认为有比 O(n log n) 更好的解决方案。所以这是这个愚蠢问题的 O(n) 解决方案。

#include <algorithm>

int int_max(int * array, int size) {
  if (size == 1)
    return *array;

  return std::max(*array, int_max(array+1, size-1));
}

在任何情况下,无论如何,任何人都不应该认为这是一个好主意。它回答了一个愚蠢的面试问题,仅此而已。你会炸毁堆栈。不好的事情会发生。而且,仅仅因为我没有声明一个变量并不意味着我没有在堆栈上生成一个。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

从乘以表示的第二个变量中提取具有最大值的行

来自分类Dev

如何将 id 绑定到最大日期,在没有子查询的情况下按第二个 id 分组?

来自分类Dev

通过使用密集秩函数获得第二个最大值

来自分类Dev

如何使用 SQL 获得第二个最大值?

来自分类Dev

MySQL:获取列中第二个数字最大值的最佳方法?没有查询限制

来自分类Dev

以最有效的方式在数组中查找第二个最大值

来自分类Dev

如何在没有滚动条的情况下使第二个div填充屏幕的剩余高度?

来自分类Dev

如何在没有路径的情况下获取第二个文件夹的名称

来自分类Dev

如何在没有第二个LINQ查询的情况下获取排除的集合?

来自分类Dev

sql 数据库,有多个 where,第二个最大值

来自分类Dev

有什么功能可以找到二维数组中的第二个最小值或最大值?

来自分类Dev

查找没有第二个值的值

来自分类Dev

如何在没有任何延迟和延迟的情况下从第二个元素获取第一个元素?

来自分类Dev

如何在没有唯一独特标记的情况下刮擦同一类的第二个<div>标签

来自分类Dev

jQuery:在存在具有相同ID的元素的情况下选择第二个元素

来自分类Dev

使用mysql查询在表中查找第二个最大值

来自分类Dev

SQL Server:每组第二个最大值

来自分类Dev

MySQL组函数错误,需要第二个最大值

来自分类Dev

使用mysql查询在表中查找第二个最大值

来自分类Dev

Tableau计算字段中的第二个最大值

来自分类Dev

根据第二个表获取每个组的最大值记录

来自分类Dev

在pandas转换lambda函数中,如果最大是无穷大,则使用else来获得第二个最大值

来自分类Dev

在不使用IB或Xcode的情况下创建第二个uiview

来自分类Dev

Ubuntu Gnome:默认情况下禁用第二个屏幕

来自分类Dev

如何在不替换整行的情况下替换第二个匹配项

来自分类Dev

如何有效地过滤由两列 groupby 操作获得的数据框以仅包含第二个索引的最大值和最小值?

来自分类Dev

如何获得第二个标签值

来自分类Dev

获得第二个值:1.28 ( 3.93%)

来自分类Dev

为什么split会在第二个元素为空的情况下返回一个数组?

Related 相关文章

  1. 1

    从乘以表示的第二个变量中提取具有最大值的行

  2. 2

    如何将 id 绑定到最大日期,在没有子查询的情况下按第二个 id 分组?

  3. 3

    通过使用密集秩函数获得第二个最大值

  4. 4

    如何使用 SQL 获得第二个最大值?

  5. 5

    MySQL:获取列中第二个数字最大值的最佳方法?没有查询限制

  6. 6

    以最有效的方式在数组中查找第二个最大值

  7. 7

    如何在没有滚动条的情况下使第二个div填充屏幕的剩余高度?

  8. 8

    如何在没有路径的情况下获取第二个文件夹的名称

  9. 9

    如何在没有第二个LINQ查询的情况下获取排除的集合?

  10. 10

    sql 数据库,有多个 where,第二个最大值

  11. 11

    有什么功能可以找到二维数组中的第二个最小值或最大值?

  12. 12

    查找没有第二个值的值

  13. 13

    如何在没有任何延迟和延迟的情况下从第二个元素获取第一个元素?

  14. 14

    如何在没有唯一独特标记的情况下刮擦同一类的第二个<div>标签

  15. 15

    jQuery:在存在具有相同ID的元素的情况下选择第二个元素

  16. 16

    使用mysql查询在表中查找第二个最大值

  17. 17

    SQL Server:每组第二个最大值

  18. 18

    MySQL组函数错误,需要第二个最大值

  19. 19

    使用mysql查询在表中查找第二个最大值

  20. 20

    Tableau计算字段中的第二个最大值

  21. 21

    根据第二个表获取每个组的最大值记录

  22. 22

    在pandas转换lambda函数中,如果最大是无穷大,则使用else来获得第二个最大值

  23. 23

    在不使用IB或Xcode的情况下创建第二个uiview

  24. 24

    Ubuntu Gnome:默认情况下禁用第二个屏幕

  25. 25

    如何在不替换整行的情况下替换第二个匹配项

  26. 26

    如何有效地过滤由两列 groupby 操作获得的数据框以仅包含第二个索引的最大值和最小值?

  27. 27

    如何获得第二个标签值

  28. 28

    获得第二个值:1.28 ( 3.93%)

  29. 29

    为什么split会在第二个元素为空的情况下返回一个数组?

热门标签

归档