第一题100%,用的递归: public class Main { public static void main(String[] args) { String s = new Scanner(System.in).nextLine(); char[] array = s.toCharArray(); recur(0,array.length,array); System.out.println(array); } static void recur(int start,int end,char[] arr){ if (start>=end) return; char min = arr[end-1]; int index = end-1; for (int i = end-1; i >=start; i--) { if (arr[i] < min){ min = arr[i]; index = i; if (min == 'a') break; } } for (int i = start; i < index; i++) { if (arr[i]>min){ arr[index] = arr[i]; arr[i] = min; return; } } recur(index+1,end,arr); } }
1 1

相关推荐

牛客网
牛客网在线编程
牛客网题解
牛客企业服务