如何在C ++中找到第一个最大值?

检举人

我搜索数组的最长范围。数组元素为:2 3 4 7 8,结果为2-4。如果数组具有2个或多个相同范围怎么办。我如何找到第一个?

for (int i = 0; i < n-1; i++) {
        if (t[i] == t[i+1] -1) {
            cur++;
        }
        else {
            if (cur> max) {
                max = cur;
                first= cur_first;
                last= t[i];
            }
            cur= 1;
            cur_first= t[i+1];
        }

    }
    if (cur> max) {
        cur= max;
        first= cur_first;
        last= t[n-1];
    }
acegs

如果在内部添加另一个循环只是为了获取范围,它将更简单(并且更快)。

int t[] = {2,3,4,7,8,2,3,4};
int n = sizeof(t)/sizeof(t[0]);

struct {
    int idx;  //start index.
    int len;  //length of range.
} cur, max = {0,1};

for (int i = 0; i < n-1; i++) {
    //---get the current range.
    cur.len = 1;
    cur.idx = i;
    while(t[i]==t[i+1]-1){
        cur.len++; i++;
        if(i >= n-1) break;
    }
    //---save the range with maximum length.
    if(cur.len > max.len){
        max = cur;

        if(max.len > n-i-1) break;  //optimization code. can be optional.

    }
}

printf("max range: idx=%d; len=%d; firstValue=%d",max.idx, max.len, t[max.idx]);

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

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

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何在VBA的列中找到大于零的第一个值?

来自分类Dev

如何在表格中找到第一个文本框的值?

来自分类Dev

如何仅替换数据帧熊猫中最大值的第一个实例?

来自分类Dev

如何从多个条件中找到与第一个条件相匹配的值

来自分类Dev

如何在另一列中找到一个单元格的最大值?

来自分类Dev

如何在后续行中找到与当前行相比较小的第一个值?

来自分类Dev

如何在MATLAB的每一行中找到第一个'1'

来自分类Dev

如何在URL中找到第一个参数的indexOf

来自分类Dev

如何在每个后续数字间隔中找到第一个缺失数字?

来自分类Dev

如何在各种事件序列中找到第一个开始时间?

来自分类Dev

如何在算术表达式中找到第一个运算符?

来自分类Dev

如何在水豚中找到第一个空字段?

来自分类Dev

如何在vim中找到单词的第一个大写字母?

来自分类Dev

如何在井字棋盘中找到第一个获胜组合?

来自分类Dev

如何在算术表达式中找到第一个运算符?

来自分类Dev

如何在长路径中找到第一个丢失的目录?

来自分类Dev

如何在字符串中找到第一个元音

来自分类Dev

如何在Ruby中找到字符串的第一个非重复字母?

来自分类Dev

如何在VBA中找到第一个空单元格?

来自分类Dev

如何在对象中找到作为数组的第一个属性?

来自分类Dev

如何在排名较高的张量中找到第一个匹配张量的索引

来自分类Dev

如何在 Django 模板中找到第一个实例

来自分类Dev

如何在列表中找到连续重复数字的第一个索引?

来自分类Dev

如何在r中找到第一个观测值与前两个连续的否定观测值之间的观测数

来自分类Dev

如何在C中找到数组中每5个元素的最大值

来自分类Dev

如何使groupBy在R中找到第一个动作

来自分类Dev

如何在列表python中找到第二个元素和第一个元素的差异

来自分类Dev

如何在R中找到子字符串的第一个唯一的相遇

来自分类Dev

如何在java中找到一维字符串的第一个字符

Related 相关文章

  1. 1

    如何在VBA的列中找到大于零的第一个值?

  2. 2

    如何在表格中找到第一个文本框的值?

  3. 3

    如何仅替换数据帧熊猫中最大值的第一个实例?

  4. 4

    如何从多个条件中找到与第一个条件相匹配的值

  5. 5

    如何在另一列中找到一个单元格的最大值?

  6. 6

    如何在后续行中找到与当前行相比较小的第一个值?

  7. 7

    如何在MATLAB的每一行中找到第一个'1'

  8. 8

    如何在URL中找到第一个参数的indexOf

  9. 9

    如何在每个后续数字间隔中找到第一个缺失数字?

  10. 10

    如何在各种事件序列中找到第一个开始时间?

  11. 11

    如何在算术表达式中找到第一个运算符?

  12. 12

    如何在水豚中找到第一个空字段?

  13. 13

    如何在vim中找到单词的第一个大写字母?

  14. 14

    如何在井字棋盘中找到第一个获胜组合?

  15. 15

    如何在算术表达式中找到第一个运算符?

  16. 16

    如何在长路径中找到第一个丢失的目录?

  17. 17

    如何在字符串中找到第一个元音

  18. 18

    如何在Ruby中找到字符串的第一个非重复字母?

  19. 19

    如何在VBA中找到第一个空单元格?

  20. 20

    如何在对象中找到作为数组的第一个属性?

  21. 21

    如何在排名较高的张量中找到第一个匹配张量的索引

  22. 22

    如何在 Django 模板中找到第一个实例

  23. 23

    如何在列表中找到连续重复数字的第一个索引?

  24. 24

    如何在r中找到第一个观测值与前两个连续的否定观测值之间的观测数

  25. 25

    如何在C中找到数组中每5个元素的最大值

  26. 26

    如何使groupBy在R中找到第一个动作

  27. 27

    如何在列表python中找到第二个元素和第一个元素的差异

  28. 28

    如何在R中找到子字符串的第一个唯一的相遇

  29. 29

    如何在java中找到一维字符串的第一个字符

热门标签

归档