数字转成字符串长度本身不大,直接做暴力就行(偷懒) public int solution(int num){ if(num < 10){ return num; } char[] s = String.valueOf(num).toCharArray(); for(int i = 0;i < s.length;++i){ int max = 0; int maxIndex = i; for(int j = i;j < s.length;++j){ if(s[i] - '0' > max){ max = s[i] - '0'; maxIndex = j; } } if(maxIndex != i){ swap(s, i, maxIndex); return Integer.parseInt(new String(s)); } } return num; } private void swap(char[] s, int i1, int i2){ char temp = s[i1]; s[i1] = s[i2]; s[i2] = temp; }
1 2

相关推荐

头像
11-21 11:39
四川大学 Java
是红鸢啊:忘了还没结束,还有字节的5k 违约金
点赞 评论 收藏
分享
11-09 17:30
门头沟学院 Java
TYUT太摆金星:我也是,好几个华为的社招找我了
点赞 评论 收藏
分享
牛客网
牛客企业服务