题目描述
输入一个int型整数,按照从右向左的阅读顺序,返回一个不含重复数字的新的整数。
输入描述
输入一个int型整数
输出描述
按照从右向左的阅读顺序,返回一个不含重复数字的新的整数
输入例子
9876673
输出例子
37689
算法实现
import java.util.HashMap;
import java.util.HashSet;
import java.util.LinkedHashSet;
import java.util.Scanner;
/*
* All Rights Reserved !!!
*/
public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
while (scanner.hasNext()) {
int input = scanner.nextInt();
System.out.println(extractNumber(input + ""));
}
scanner.close();
}
private static String extractNumber(String numStr) {
StringBuilder builder = new StringBuilder();
HashSet<Character> set = new LinkedHashSet<>();
for (int i = numStr.length() - 1; i >= 0; i--) {
set.add(numStr.charAt(i));
}
for (Character c : set) {
builder.append(c);
}
// 若是第一个字符是0
if (builder.charAt(0) == '0') {
return builder.substring(1, builder.length());
}
return builder.toString();
}
}