剑指offer系列之31:把数组排成最小的数
2016-04-12 16:25
363 查看
题目描述:输入一个正整数数组,把数组里所有的数字拼接起来排成一个数,打印能拼接出的所有数字中最小的一个。
思路:这道题目其实是让制定一个排序规则,数组根据这个排序规则排序之后就能得到最小的数字。根据题目规则,对于两个数字m和n,如果mn>nm,则m>n,这是重新定义的排序规则。这里使用java中Collection类中的sort方法。
思路:这道题目其实是让制定一个排序规则,数组根据这个排序规则排序之后就能得到最小的数字。根据题目规则,对于两个数字m和n,如果mn>nm,则m>n,这是重新定义的排序规则。这里使用java中Collection类中的sort方法。
import java.util.*;; public class Solution { public String PrintMinNumber(int [] numbers) { ArrayList<Integer> list=new ArrayList<Integer>(); for (int i : numbers) { list.add(i); } Collections.sort(list, new Comparator<Integer>() { @Override public int compare(Integer o1, Integer o2) { String str1=o1+""+o2; String str2=o2+""+o1; return str1.compareTo(str2); } }); StringBuilder sb=new StringBuilder(); for (Integer integer : list) { sb.append(integer); } return sb.toString(); } }
相关文章推荐
- js使用Autocomplete实现联想框
- 前端打包构建工具grunt快速入门(大篇幅完整版)
- 前端打包构建工具grunt快速入门(大篇幅完整版)
- 前端组件化开发实践
- jquery mobile 问题
- 前端模块化开发方案小对比
- 前端重构实践(二) —— 模块化开发
- 前端重构实践(一) —— 性能优化
- 笔记练习:《Javascript入门经典(第5版)》page202_16.11Practice
- JS实现加密
- 剑指offer系列之30:从1到n整数中1出现的次数
- HTML5 地理定位
- 问题error C4996: 'scanf': This function or variable may be unsafe. Consider using scanf_s instead. 的解决
- Div+css中ul ol li dl dt dd使用
- javascript 高级程序设计 八
- jquery ajax请求了两次问题
- java中用StringBuffer写文件换行
- 模拟JSTL的标签---自定义标签
- HTML 5 Canvas vs. SVG
- js网页顶部线性页面加载进度条,jquery头部线性进度条总结