博客
关于我
剑指offer[32]——把数组排成最小的数
阅读量:558 次
发布时间:2019-03-10

本文共 492 字,大约阅读时间需要 1 分钟。

题目描述

输入一个正整数数组,把数组里所有数字拼接起来排成一个数,打印能拼接出的所有数字中最小的一个。例如输入数组{3,32,321},则打印出这三个数字能排成的最小数字为321323。

JavaScript中有自带的sort函数,我们只需要定义其中排序的规则即可进行排序,分为以下几种情况:

  1. 前一个数字的首位小于第二个数字的首位,位置不用变换
  2. 前一个数字的首位大于第二个数字的首位,位置交换
  3. 相邻两个数字的首位相等,则将两个数字拼接起来,与调换顺序的数字拼接大小相比,看数值大小决定是否交换
function PrintMinNumber(numbers){    if(numbers.length==0){return '';}    numbers = numbers.sort((a,b)=>{        a = String(a);        b = String(b);        if(a[0]
b[0]) {return 1;} else{ return parseInt([a,b].join(''))

转载地址:http://pawvz.baihongyu.com/

你可能感兴趣的文章
Leetcode第557题---翻转字符串中的单词
查看>>
Problem G. The Stones Game【取石子博弈 & 思维】
查看>>
Unable to execute dex: Multiple dex files
查看>>
Java多线程
查看>>
Unity监听日记
查看>>
AndroidStudio跳到错误位置
查看>>
木马开发的基本理论基础(五)
查看>>
openssl服务器证书操作
查看>>
expect 模拟交互 ftp 上传文件到指定目录下
查看>>
linux系统下双屏显示
查看>>
PDF.js —— vue项目中使用pdf.js显示pdf文件(流)
查看>>
我用wxPython搭建GUI量化系统之最小架构的运行
查看>>
我用wxPython搭建GUI量化系统之Sizer布局管理与页面切换
查看>>
我用wxPython搭建GUI量化系统之多只股票走势对比界面
查看>>
我用wxPython搭建GUI量化系统之财务选股工具添加日历和排序
查看>>
selenium+python之切换窗口
查看>>
重载和重写的区别:
查看>>
搭建Vue项目步骤
查看>>
linux 编译出现的错误
查看>>
账号转账演示事务
查看>>