题解 | #提取不重复的整数#
提取不重复的整数
https://www.nowcoder.com/practice/253986e66d114d378ae8de2e6c4577c1
import java.util.Scanner; import java.util.HashSet; // 注意类名必须为 Main, 不要有任何 package xxx 信息 public class Main { public static void main(String[] args) { HashSet<Character> hset = new HashSet<>(); StringBuilder strb = new StringBuilder(); Scanner in = new Scanner(System.in); // 数组转字符串数组 char[] inputNum = String.valueOf(in.nextInt()).toCharArray(); // 倒叙循环 for(int i = inputNum.length - 1 ; i >= 0; i--) { // 判断 set 中是否存在此值 if(hset.contains(inputNum[i])){ // 存在 continue; } else { // 不存在 hset.add(inputNum[i]); strb.append(inputNum[i]); } } System.out.println(Integer.valueOf(strb.toString())); } }
这个思路其实很简单,就是将输入的字符串转为char数组,然后逐一倒着循环,用一个不重复的HashSet表来判断是否重复,不重复就放在StringBuilder中,最后转为Integer即可。
好久没做题了,这是脑子里的第一反应...