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

如何用网站开发工具停止网页进程东莞关键词优化外包

如何用网站开发工具停止网页进程,东莞关键词优化外包,青岛seo网站关键词优化,合肥环保公司网站建设输入一个正整数数组,把数组里所有数字拼接起来排成一个数,打印能拼接出的所有数字中最小的一个。 例如输入数组 [3,32,321][3,32,321],则打印出这 33 个数字能排成的最小数字 321323321323。 数据范围 数组长度 [0,500][0,500]。 样例&#x…

输入一个正整数数组,把数组里所有数字拼接起来排成一个数,打印能拼接出的所有数字中最小的一个。

例如输入数组 [3,32,321][3,32,321],则打印出这 33 个数字能排成的最小数字 321323321323。

数据范围

数组长度 [0,500][0,500]。

样例:

输入:[3, 32, 321] 

输出:321323 

注意:输出数字的格式为字符串。

解题思路: 首先假设数组内的数为 [a, b, c]。若定义一个新的排序方法即 ab > ba,即a在头部的拼接结果比b在头部的拼接结果大,那么就交换a,b在数组内的位置。以这种判断方式排列出来的新数组,从前往后拼接起来就是我们本题需要的最小数。

以下是证明上述排序方式是有意义的:

设a, b, c 的位数分别为n , m , k。

1.若 ab >= ba 且  ab  <=  ba是否能证明 ab = ba

证明:由于abba位数相同,在数值上比较本假设理应成立,所以此排序满足反对称性。

2.若 ab < babc < cb,是否能证明 ac < ca

证明:ab = a*10^m + b,    ba = b*10^n + a,ac = a*10^k + c, ca = c*10^n +  a;  

  由   ab < ba  得 a/b = (10^n    -   1 )/(10^m      -    1)

由  bc < cb 得b/c = (10^m      -    1)/(10^k      -   1)

只需证明    a/c = (10^n    -     1)/(10^k    -     1)

结论显然成立。即此排序方法满足传递性

由于sort()方法核心是快速排序,快排核心就是反对称性(特定情况唯一)与 传递性(让数据有梯度)。所以此新定义得排序方法有意义。

最后我们只需证明我们排序后的数组就是最优数组即可:

设我们排序后的数组是 [a, b, c, d],那么最小数就是 abcd

利用反证法:

假设最小数是acbd,由于a,d所处位置一样所以比较bc,cb大小即可

由我们的新排序定义可知 bc < cb 所以 abcd < acbd,所以假设不成立。

即排序后的数组就是最优数组。

理论成立代码如下:

class Solution {public String printMinNumber(int[] nums) {Integer a[] = new Integer[nums.length];for(int i =0; i < nums.length; i ++) a[i] = nums[i];//只能转换成Integer类Arrays.sort(a, new Comparator<Integer>() {public int compare(Integer o1, Integer o2) {//新排序方法String a = "" + o1;String b = "" + o2;if(Integer.valueOf(a + b) > Integer.valueOf(b + a))return 1;//交换位置else return -1;//不换}});String s1 = "";for(int i = 0; i < a.length; i ++) s1 = s1 + a[i];return s1;} 
}

http://www.yayakq.cn/news/490655/

相关文章:

  • 网站开发环境济南网站建设套餐
  • 翻页大图网站重庆网站建设制作设计公司
  • 怎么做刷会员网站黑客零基础入门
  • 电子商务网站的优势网站的内容有哪些内容
  • sw网站建设品牌网站建设3a小蝌蚪
  • 企业网站建设一条龙网站建设 蜂图网络
  • 四川网站建设设计公司哪家好中学生制作网站
  • 做企业网站市场分析wordpress用户前端发文
  • 怎么更改网站域名代做预算网站
  • 泉州建设网站公司吗电子商务的分类
  • 为企业做网站的公司做网站枣庄
  • 太仓网站设计早晨设计微信公众号小说网站怎么做
  • 去掉博客网站链接后面的wordpress国际新闻今天最新
  • 网站建设时怎么附加数据库网站建设公司知名企业
  • 为网站开发android客户端校园网站建设资源
  • 一个域名怎么弄二级域名福建网站优化建设
  • 做外贸哪个网站好跨境网站
  • 营销策划公司行业榜单seo岗位培训
  • 注册域名后怎么建设网站做网站一个人可以吗
  • 企业网站建设 租用服务器北京做网络推广的公司
  • 机场网站建设需求建设自有网站需要什么
  • 做婚礼网站的公司简介最新wordpress 优化版
  • 昆明seo公司网站在线制作app下载
  • 网站兼容性是什么意思海口免费网站建设
  • 泉州网站的建设wordpress 修改首页
  • 微信公众号怎么做链接网站在线网站域名whois查询工具
  • 手机网站建站步骤论文网站数据包如何做架构
  • 中山祥云网站建设南京网络设计
  • 浏览量最大的网站dw软件下载官方免费下载
  • 做一个公司的门户网站多少钱网站基础维护