剑指offer(32)把数组排成最小的数
2018-04-08 01:42
239 查看
题目描述
输入一个正整数数组,把数组里所有数字拼接起来排成一个数,打印能拼接出的所有数字中最小的一个。例如输入数组{3,32,321},则打印出这三个数字能排成的最小数字为321323。
题目分析
主要就是定义新的排序规则,也就是把前一个数和后一个数拼接起来的数,然后再与后一个数和前一个数拼接起来的数比较字典序
代码
function PrintMinNumber(numbers) { numbers.sort(function(s1,s2){ let c1=s1+""+s2; let c2=s2+""+s1; return c1>c2; }); let min=""; numbers.forEach(i=>min+=i) return min; }
相关文章推荐
- 输入一个正整数数组,把数组里所有数字拼接起来排成一个数,打印能拼接出的所有数字中最小的一个。例如输入数组{3,32,321},则打印出这三个数字能排成的最小数字为321323。剑指Offer(32)
- 剑指Offer编程练习006——旋转数组中的最小数字
- 32把数组排成最小的数
- 《剑指Offer》学习笔记--面试题8:旋转数组的最小数字
- 剑指offer系列之三十一:把数组排成最小的数
- 面试题08_旋转数组的最小数字——剑指offer系列
- 剑指Offer面试题11:旋转数组的最小数字
- 剑指offer-把数组排成最小的数(Java)
- 输入一个正整数数组,把数组里所有数字拼接起来排成一个数,打印能拼接出的所有数字中最小的一个。例如输入数组{3,32,321},则打印出这三个数字能排成的最小数字为321323。
- 剑指offer(32)-数组中的逆序对
- 剑指Offer系列---(11)旋转数组的最小数字
- 剑指Offer:面试题33——把数组排成最小的数(java实现)(未完待续)
- 输入一个正整数数组,把数组里所有数字拼接起来排成一个数,打印能拼接出的所有数字中最小的一个。例如输入数组{3,32,321},则打印出这三个数字能排成的最小数字为321323。
- 九度《剑指offer》把数组排成最小的数
- 输入一个正整数数组,把数组里所有数字拼接起来排成一个数,打印能拼接出的所有数字中最小的一个。例如输入数组{3,32,321},则打印出这三个数字能排成的最小数字为321323。
- 剑指offer 面试题8:旋转数组的最小数字 题解
- 剑指Offer(11)旋转数组的最小数字
- 剑指Offer_11_旋转数组的最小数字
- 《剑指offer》-输出旋转数组的最小元素
- 剑指offer刷题之c++实现的旋转数组的最小数字