C++面向对象程序设计 035:按距离排序 ---- (北大Mooc)
发布日期:2021-06-30 22:27:54
浏览次数:2
分类:技术文章
本文共 1069 字,大约阅读时间需要 3 分钟。
文章目录
专题博客链接
原题题目
#include#include #include #include using namespace std;template struct Closer { // 在此处补充你的代码};int Distance1(int n1,int n2) { return abs(n1-n2);}int Distance2(const string & s1, const string & s2){ return abs((int)s1.length()- (int) s2.length());}int a[10] = { 0,3,1,4,7,9,20,8,10,15};string b[6] = { "American","Jack","To","Peking","abcdefghijklmnop","123456789"};int main(){ int n;string s; while( cin >> n >> s ) { sort(a,a+10,Closer (n,Distance1)); for(int i = 0;i < 10; ++i) cout << a[i] << "," ; cout << endl; sort(b,b+6,Closer (s,Distance2)); for(int i = 0;i < 6; ++i) cout << b[i] << "," ; cout << endl; } return 0;}
代码实现
private: T1 n; T2 func;public: Closer(T1 n1,T2 func1):n(n1),func(func1){ } bool operator ()(const T1& n1,const T1 & n2) { int judge1 = func(n1,n); int judge2 = func(n2,n); if(judge1 < judge2 || (judge1 == judge2 && n1 < n2)) return true; else return false; }
转载地址:https://love6.blog.csdn.net/article/details/115026116 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!
发表评论
最新留言
网站不错 人气很旺了 加油
[***.192.178.218]2024年05月04日 16时40分46秒
关于作者
喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
java常用类 String面试题
2019-04-30
Windows10下的powershell美化教程
2019-04-30
利用ffmpeg合并音频和视频
2019-04-30
刷好老毛子系统进不了老毛子系统后台的解决办法
2019-04-30
Parallels Desktop 16 不能联网的解决办法
2019-04-30
solr修改schema文件(solr修改配置文件)
2019-04-30
select下拉框分组展示插件的使用--(select-mania插件的使用)
2019-04-30
Java Lambda表达式的应用--Stream API操作集合框架
2019-04-30
solr的使用详解
2019-04-30
Myslq连接(JDBC)url属性的参数的设置
2019-04-30
关于Spring MVC与前端的交互
2019-04-30
JQuery使用validate插件完成校验
2019-04-30
一个简单的layui登陆界面
2019-04-30
大厂经典面试题:Redis为什么这么快?
2019-04-30
阿里四面,居然栽在一道排序算法上
2019-04-30
如何在二三线城市月薪过万(一)看完这篇后端简历优化,包你面试不断
2019-04-30
膜拜!阿里内部都在强推的K8S(kubernetes)学习指南,不能再详细了
2019-04-30