提取不重复的整数

提取不重复的整数

       乍暖还寒时候最难将息。

 

背景:Java 在线编程机试刷题。

题目描述:

输入一个int 型整数,按照从右向左的阅读顺序,返回一个不含重复数字的新的整数。

输入描述:

输入一个int型整数。

输出描述:

按照从右向左的阅读顺序,返回一个不含重复数字的新的整数。

示例1:

输入:

9876673

输出:

37689

Java代码:

 1 import java.util.Set;
 2 import java.util.HashSet;
 3 import java.util.Scanner;
 4 
 5 public class Main{
 6     
 7     public static void main(String [] args){
 8         Scanner scan = new Scanner(System.in);
 9         String inputStr = scan.nextLine();
10         int input = Integer.parseInt(inputStr);
11         System.out.print(getNoRepeat(input));
12         scan.close();
13     }
14     
15     private static int getNoRepeat(int input){
16         String inputStr = String.valueOf(input);
17         int length = inputStr.length();
18         Set<Character> set = new HashSet<Character>();
19         StringBuilder sb = new StringBuilder();
20         // 从最后一个数开始遍历
21         for(int i = length - 1; i >= 0; i--){
22             Character tempChar = inputStr.charAt(i);
23             boolean addResult = set.add(tempChar);
24             // 使用Set 的唯一性 不含重复元素
25             if(addResult){
26                 sb.append(tempChar);
27             }
28         }
29         int result = Integer.parseInt(sb.toString());
30         return result;
31     }
32     
33 }

输出验证:


 

 

 

乍暖还寒时候

最难将息

 

 

 

posted @ 2020-09-16 16:00  涛姐涛哥  阅读(248)  评论(0编辑  收藏  举报