
思路
因为这是一道填空题,所以可以写一个冒泡排序算法来测试
首先先测试出最小的字符串长度 可得当a=onmlkjihgfedcba时,交换次数为105次
为了满足100次,并且字典序最小,此时只需将第5个字母j向前移动5位即可
代码实现
import java.util.Scanner;
public class Main{
public static void main(String[] args) {
Scanner scan = new Scanner(System.in);
String str = scan.nextLine();
char[] chars = str.toCharArray();
char temp = 0;
int count = 0;
for (int i = 0; i < chars.length - 1; i++) {
for (int j = 0; j < chars.length - 1 - i; j++) {
if (chars[j] > chars[j + 1]) {
temp = chars[j];
chars[j] = chars[j + 1];
chars[j + 1] = temp;
count++;
}
}
}
for (char c : chars) {
System.out.print(c);
}
System.out.println();
System.out.println(count);
}
}