5.查找最小的k个元素(数组)
来源:互联网 发布:中兴百货知乎 编辑:程序博客网 时间:2024/05/16 14:20
题目:输入n个整数,输出其中最小的k个。
例如输入1,2,3,4,5,6,7和8这8个数字,则最小的4个数字为1,2,3和4。
这里先用排序,将原来的数组排序,去前k个值则可以完成任务!但此处并没有要求最后获得的数组是有序的,所以可以创建含k个
元素的数组。原数组的0-(k-1)个位置的值直接复制到新建的数组。原始数组从第k个位置开始,每取出一个值,和新建数组的最大值
相比较,然后决定是否替换新建数组中的最大值!
#include <iostream>void findmin(int* scr,int* des,int s,int d);int findmax(int* des,int d);int main(){using namespace std;int s = 10;int d = 3;int scr[10] = {3,5,9,1,7,2,4,10,8,6};int des[3] = {0};findmin(scr,des,s,d);for (int i=0;i<d;i++)cout<<des[i]<<" ";cout<<endl;system("pause");return 0;}void findmin(int* scr,int* des,int s,int d){for (int i =0;i<d;i++)des[i] = scr[i];for (int i=d;i<s;i++){if (scr[i]<des[findmax(des,d)])des[findmax(des,d)] = scr[i];}}int findmax(int* des,int d){int maxdata = des[0];int pos = 0;for (int i=0;i<d;i++){if (maxdata<des[i]){maxdata = des[i];pos = i;}}return pos;}
- 5.查找最小的k个元素(数组)
- 5.查找最小的k个元素(数组)
- 查找最小的k个元素(数组)
- No5、查找最小的 k 个元素(数组)
- 查找最小的k个元素(数组)
- 5.查找最小的k个元素
- 5.查找最小的k个元素
- 5.查找最小的k 个元素
- 5.查找最小的k个元素
- 5.查找最小的 k个元素
- 5. 微软面试题: 查找最小的k个元素(数组)
- 微软试题:查找数组中最小的k个元素
- 在一个数组中查找最大的K个元素或者最小的K个元素
- 每天一算法(查找最小的k个元素(数组))
- 微软面试100道之 5 查找最小的k个元素(数组)
- 查找最小的k个元素
- 查找最小的k个元素
- 查找最小的 k个元素
- 个人生活税收知多少?
- 国外PAAS平台网址推荐
- 视图
- 二叉树,已知后序和中序求先序(递归)
- android json解析及简单例子
- 5.查找最小的k个元素(数组)
- The Address Book does not contain a cross certificate capable of validating the public key
- android 混淆 proguard
- RMQ——ST算法
- java native2ascii 工具 使用
- Android 的系统属性(SystemProperties)设置分析
- Flex中如何利用mx:states和mx:State创建不同状态应用的例子
- ASP标准MD5代码
- 会几门程序语言才脱离屌丝行列?