当前位置: 首页 > news >正文

汕尾手机网站设计免费建立网站软件

汕尾手机网站设计,免费建立网站软件,江苏和城乡建设部网站首页,连云港网站建设开发问题描述#xff1a;输入一个正整数数组#xff0c;将它们连接起来排成一个数#xff0c;输出能排出的所有数字中最小的一个。例如输入数组{12, 567}#xff0c;则输出这两个能排成的最小数字12567。请给出解决问题的算法#xff0c;并证明该算法。 思路#xff1a;先将… 问题描述输入一个正整数数组将它们连接起来排成一个数输出能排出的所有数字中最小的一个。例如输入数组{12,  567}则输出这两个能排成的最小数字12567。请给出解决问题的算法并证明该算法。 思路先将整数数组转为字符串数组然后字符串数组进行排序最后依次输出字符串数组即可。这里注意的是字符串的比较函数需要重新定义不是比较a和b而是比较ab与 ba。如果ab ba则a b如果ab ba则a b如果ab ba则a b。比较函数的定义是本解决方案的关键。 证明为什么这样排个序就可以了呢简单证明一下。根据算法如果a b那么a排在b前面否则b排在a前面。可利用反证法假设排成的最小数字为xxxxxx并且至少存在一对字符串满足这个关系a b但是在组成的数字中a排在b前面。根据a和b出现的位置分三种情况考虑 1xxxxab用ba代替ab可以得到xxxxba这个数字是小于xxxxab与假设矛盾。因此排成的最小数字中不存在上述假设的关系。 2abxxxx用ba代替ab可以得到baxxxx这个数字是小于abxxxx与假设矛盾。因此排成的最小数字中不存在上述假设的关系。 3axxxxb这一步证明麻烦了一点。可以将中间部分看成一个整体ayb则有ay yayb by成立。将ay和by表示成10进制数字形式则有下述关系式这里ayb的位数分别为nmk。 关系1 ay ya a * 10^m y y * 10^n a a * 10^m - a y * 10^n - y a( 10^m - 1)/( 10^n - 1) y 关系2 yb by y * 10^k b b * 10^m y y * 10^k - y b * 10^m - b y b( 10^m -1)/( 10^k -1)  关系3 a( 10^m - 1)/( 10^n - 1) y b( 10^m -1)/( 10^k -1)   a/( 10^n - 1) b/( 10^k -1) a*10^k - a b * 10^n - b a*10^k b b * 10^n a a b 这与假设a b矛盾。因此排成的最小数字中不存在上述假设的关系。 综上所述得出假设不成立从而得出结论对于排成的最小数字不存在满足下述关系的一对字符串a b但是在组成的数字中a出现在b的前面。从而得出算法是正确的。 参考代码 //重新定义比较函数对象 struct compare {bool operator() (const string src1, const string src2){string s1 src1 src2;string s2 src2 src1;return s1 s2; //升序排列如果改为s1 s2则为逆序排列} }; //函数功能 把数组排成最小的数 //函数参数 pArray为数组,num为数组元素个数 //返回值 无 void ComArrayMin(int *pArray, int num) {int i;string *pStrArray new string[num];for(i 0; i num; i) //将数字转换为字符串{ stringstream stream;streampArray[i];streampStrArray[i];}sort(pStrArray, pStrArray num, compare()); //字符串数组排序for(i 0; i num; i) //打印字符串数组coutpStrArray[i];coutendl;delete [] pStrArray; }
http://www.w-s-a.com/news/599304/

相关文章:

  • 网站建设业务终止合作范本主机公园wordpress
  • 口碑好企业网站建设网站建设与什么专业有关
  • 助贷获客系统快速优化排名公司推荐
  • 重庆做网站优化推广的公司企业网站如何进行定位
  • 高密市赏旋网站设计有限公司山东广饶县建设局网站
  • 成都哪里有网站开发公司网业分离是什么
  • 购物导购网站开发女孩学建筑学好找工作吗
  • 做网站沈阳掌握夏邑进入公众号
  • 怎么做自动提卡网站谷歌推广怎么做
  • 大同网站建设熊掌号wordpress 首页单页
  • 青岛网站美工成都优秀网站建设
  • 聊城大型门户网站建设多版本wordpress
  • 建网站的公司 快云wordpress的搜索
  • 贷款网站模版东莞网站建设哪家专业
  • 做做网站已更新878网站正在建设中
  • dz旅游网站模板网站上做百度广告赚钱么
  • 青岛外贸假发网站建设seo优化名词解释
  • 四川建设厅网站施工员证查询网站建设行业政策
  • 网站全站出售dw怎么设计网页
  • 合肥网站建设方案服务网站建设推荐郑国华
  • 襄阳网站建设需要多少钱台州网站设计公司网站
  • 东莞专业拍摄做网站照片如何在百度上发布自己的广告
  • 网站建设费 科目做网站建设最好学什么
  • php商城网站建设多少钱深圳市建设
  • 有什么做糕点的视频网站黄岛做网站
  • 做视频课程网站建设一个普通网站需要多少钱
  • 专做化妆品的网站合肥做网站建设公司
  • 唐山企业网站网站建设费计入那个科目
  • 企业网站制作运营彩虹云主机官网
  • 如何建设废品网站如何在阿里云云服务器上搭建网站