(1)在C语言的被调用函数中,没有办法求出数组实参的大小,因此需要显示传递array_length参数。详见博客:C语言内存分配时间。

(2)以O(N)的计算时间得出结果。

#include <stdio.h>void find_2_largest(int array[], int array_length, int *plargest, int *psecond_largest);int main(void){int array[10]={23,45,987,3,-90,123,987,1975,988,0};int largest=0;int second_largest=0;int array_length=sizeof(array)/sizeof(array[0]);find_2_largest(array, array_length, &largest, &second_largest);printf("The 2 largest number is: %d and %d.\n", largest, second_largest);return 0;
}void find_2_largest(int array[], int array_length, int *plargest, int *psecond_largest){if(array[0]>array[1]){*plargest=array[0];*psecond_largest=array[1];}else{*plargest=array[1];*psecond_largest=array[0];}for(int i=2; i<array_length; i++){if(array[i]>*plargest){*psecond_largest=*plargest;*plargest=array[i];}else if(array[i]>*psecond_largest){*psecond_largest=array[i];}}
}

查找数组中最大的2个数相关推荐

  1. C语言:有N个数从小到大的顺序存放在一个数组中,输入一个数,要求用折半查找法找出该数是数组中第几个数。如果不在数组中,打印“not found”。

    /*有N个数从小到大的顺序存放在一个数组中,输入一个数,要求用折半查找法找出该数是数组中第几个数.如果不在数组中,打印"not found".*/#include<stdio ...

  2. c语言 有15个数按由大到小,C++ 有15个数按由大到小顺序存放在一个数组中,输入一个数,要求用折半查找法找出该数是数组中第几个元素的值。如果该数不在数组中,则输出“无此数”。...

    有15个数按由大到小顺序存放在一个数组中,输入一个数,要求用折半查找法找出该数是数组中第几个元素的值.如果该数不在数组中,则输出"无此数". 以下是此题的[c++源代码],需要[c ...

  3. 在两个有序的数组中找第N个数,二分查找 O(lgm+lgn)级

    在两个有序的数组中找第N个数,O(lgm+lgn)级 分类: 算法2009-10-09 20:52 981人阅读 评论(3) 收藏 举报 问题描述: Give a divide and conquer ...

  4. 数组中查找並返回数组_用Python查找数组中出现奇数次的那个数字

    有一个数组,其中的数都是以偶数次的形式出现,只有一个数出现的次数为奇数次,要求找出这个出现次数为奇数次的数. 集合+统计 解题思路 最简单能想到的,效率不高.利用集合的特性,通过 Python 的 s ...

  5. 同时查找数组中最大和最小值

    查找数组中的最大值和最小值有下面的方法: 1.按照普通的方法进行查找,分别写出找到数组中最大值函数和最小值函数,这种方法很简单: 代码如下: int Min(int *pnArr, int nLen) ...

  6. 查找数组中第二个最小元素

    查找数组中最小的两个元素的过程: 第一种情况: 如果数组的数据是偶数个N: 1.首先假设最小值和次最小值是最前面的两个数 min1=p[0]; min2=p[1]; 2.进行循环,进入下一组的两个数中 ...

  7. 查找数组中两两之和等于X的整数对(C语言实现)

    王道数据结构线性章节的思维拓展 一个长度为N的整形数组A[1-N],给定整数X,设计一个时间复杂度不超过O(nlog2^n)的算法,查找数组中所有两两之和等于X的整数对(每个元素只输出一次) 书上有可 ...

  8. JavaScript 数组排序及查找数组中最大值最小值方法

    JavaScript 数组排序方法及查找最大值最小值方法 1. sort()方法排序 1.1 方法介绍 1.2 语法:arr.sort([compareFunction]) 1.3 参数说明 1.4 ...

  9. 【Java】 查找数组中指定元素之 顺序查找 与 二分查找

    今天博主分享两个查找数组中指定元素的算法:顺序查找与二分查找 小小目录 1.顺序查找 2. 二分查找 1.顺序查找 给定一个数组, 再给定一个元素, 找出该元素在数组中的位置. 代码如下: //顺序查 ...

最新文章

  1. 傅里叶变换拉普拉斯变换的物理解释及区别
  2. BeanCreationException: Error creating bean with name 'dataSource' defined in class path resource [
  3. Elasticsearch分布式一致性原理剖析(三)-Data篇
  4. java 示例_功能Java示例 第5部分–将I / O移到外部
  5. IOS-网络(数据安全:MD5加密)
  6. 如何区分大数据下的三大利器:数据科学家,数据工程师与数据分析师
  7. IBM虚拟化全接触 实现从虚拟化到云端的数据中心
  8. HTML基础 --- HTML基础
  9. 计算机无法 鼠标没反应,鼠标插电脑上没反应怎么回事_鼠标连接电脑没反应的解决步骤...
  10. 拼多多爆款选择要分析哪些数据?如何采集这些爆款到拼多多?
  11. 10个H5页面制作工具,功能全面评测
  12. Javascript获取当前时间24小时制
  13. JavaScript-WebAPIs学习记录
  14. 使用Matlab实现:Jacobi、Gauss-Seidel迭代
  15. 002. 顺应自然,人才会活的好
  16. 速度单位:MHZ、GHZ、Mbps
  17. 计算机四年大学规划书,大学四年规划书
  18. Linux Makefile strip函数的使用
  19. 海马玩模拟器(Droid4X)
  20. 微信小程序wx:key的解释

热门文章

  1. 吉林大学计算机科学与技术学院王欣,应用改进迭代最近点方法的点云数据配准...
  2. 表面粗糙度的基本评定参数是_表面粗糙度的概念,表面粗糙度形成因素,表面粗糙度评定依据...
  3. java api接口报500_应用程序编程接口API,我们来聊一聊这个熟悉的名词
  4. visio思维导图模板_如何下载思维导图模板?在线教你找精美漂亮的思维导图
  5. access工具_工具篇之pycharm小技巧-httpclient
  6. mysql数据库崩_mysql数据库崩溃_MySQL
  7. python在汽车上的应用_python实现图片识别汽车功能
  8. oracle := 和=,oracle a:=100 和 b=:c 区别
  9. css3波浪纹路_使用CSS3实现的波浪分隔线
  10. java怎么读取文件夹下的_java怎么读取读取文件夹下的所有文件夹和文件?