面试题33:把数组排成最小的数
来源:互联网 发布:激战2一折商城网络延迟 编辑:程序博客网 时间:2024/06/05 16:48
package com.abuge;/** * 面试题33:把数组排成最小的数 * 输入一个正整数数组,把数组里所有数字拼接成一个数,打印成能拼接出所有数字中最小的一个。 * 例如输入数组{3, 32, 321}则打印三个数字能排成的最小数字 * 思路: * 1、将整型数转换为字符串,可以解决隐形大数问题 * 2、制定比较新规则 */import java.util.Arrays;import java.util.Comparator;class MyComprator implements Comparator<String>{String result1 = null; String result2 = null; @Overridepublic int compare(String str1, String str2) {result1 = str1+ str2;result2 = str2 + str1;return result1.compareTo(result2);}}public class GetMinNum{public static String getMinNum(int[] a, int len){if(a == null || len <= 0)return null;String[] tmp = new String[len];//将数组转换为字符串for(int i = 0; i < len; i++){tmp[i] = String.valueOf(a[i]);}//按照新规则排序Arrays.sort(tmp, new MyComprator());StringBuilder sb = new StringBuilder();for(int i = 0; i < len; i++){sb.append(tmp[i]);}return sb.toString();}public static void main(String[] args) {int[] a = {456, 3, 1};int len = a.length;System.out.println(getMinNum(a, len));}}
0 0
- 面试题33:把数组排成最小的数
- 面试题33:把数组排成最小的数
- 面试题33 把数组排成最小的数
- 面试题33:把数组排成最小的数
- 面试题33_把数组排成最小的数
- 面试题33把数组排成最小的数
- 面试题33:把数组排成最小的数
- 面试题33:把数组排成最小的数
- 面试题33:把数组排成最小的数
- 面试题33:把数组排成最小的数
- 面试题33—把数组排成最小的数
- 面试题33:把数组排成最小的数
- 面试题 33: 把数组排成最小的数
- 剑指Offer面试题33把数组排成最小的数,面试题34丑数
- 【百度面试题】把数组排成最小的数
- 面试题37:把数组排成最小的数
- [面试题11]把数组排成最小的数
- 【百度面试题】把数组排成最小的数
- [java语法]基本语法(4) 数组
- 浅谈Windows网络模型之完成端口模型
- Ubuntu U盘格式化
- VS2008 express使用技巧总结
- VI使用手册(网络整理)
- 面试题33:把数组排成最小的数
- javaMail发邮件
- wpa_supplicant软件架构分析
- 利用iptables过滤URL目标请求的小技巧
- Struts2 防止表单重复提交(转载自:http://blog.csdn.net/hackerain/article/details/6990121)
- servlet单实例多线程模式
- 移植zxing(C++)到嵌入式设备
- Android ListView的了解Adapter, BaseAdapter, RecycleBin
- wpa_supplicant & wpa_cli 无线网络配置