数字的最大组合
2015-09-02 14:45
302 查看
重新排列数字中的每位,得到最大的数字
例如:
1234 -》 4321
1230 -》 3210
1122 -》 2211
想法就是对每位重新排序,从大到小输出,因为每位的可能性只有从0-9,10种可能,所以可以使用桶排序
例如:
1234 -》 4321
1230 -》 3210
1122 -》 2211
想法就是对每位重新排序,从大到小输出,因为每位的可能性只有从0-9,10种可能,所以可以使用桶排序
public static int reRange(int num) { int ret = 0; // 每一位数字 int[] s = new int[10]; while (num > 0) { s[num%10]++; num = num / 10; } for (int i=9; i> -1; i--) { while (s[i] > 0) { ret = ret * 10 + i; s[i]--; } } return ret; }
相关文章推荐
- 【LeetCode】119. Pascal's Triangle II
- apt-mirror
- Android 文件上传(客户端+服务端)
- SqlServer调用CLR服务
- ubuntu 使用笔记
- 配置struts2
- socket通信之一:TCP/IP模型与socket
- tombstones问题
- SQL临时表
- stdin, stdout, stderror
- BW delta queue (RSA7): Questions and answers
- 网站业务架构演变过程
- android 开发中获取View视图的宽和高的几种方法
- 23. jQuery 遍历 - 过滤
- OSPF
- 求解!关于Http和Socket
- Spark Shuffle 的调研
- flashcache安装使用
- hadoop中两个namenode都是standby
- 数组操作的基本函数