方法1:
/*
* 解题思路: 通过LinkedHashSet去重 (直接打印就用HashSet了)
*/
import java.util.*;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
char[] input = sc.nextLine().toCharArray();
int len = input.length;
HashSet<Integer> set = new HashSet();
for (int i = len - 1; i >= 0; i--) {
// char转int需要显示强转!
if (set.contains((int)input[i])) {
continue;
}
set.add((int)input[i]);
System.out.print(input[i]);
}
}
} 方法2:
/*
* 解题思路: 通过数组下标去重
*/
import java.util.*;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
char[] input = sc.nextLine().toCharArray();
int len = input.length;
int[] set = new int[10];
for (int i = len - 1; i >= 0; i--) {
// char转int需要显示强转, 而且我老是忘记减'0'
int ch = (int)input[i] - '0';
if (set[ch] == 1) {
continue;
}
set[ch] = 1;
System.out.print(ch);
}
}
} 


京公网安备 11010502036488号