提取不重复的整数

题目描述

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

输入描述:输入一个int型整数
输出描述:按照从右向左的阅读顺序,返回一个不含重复数字的新的整数
输入例子:9876673
输出例子:37689
 1 import java.util.Scanner;
 2 import java.util.LinkedHashSet;
 3 
 4 public class Main{
 5     public static void main(String[] args){
 6         Scanner sc=new Scanner(System.in);
 7         while(sc.hasNext()){
 8             String str=sc.nextLine();
 9             
10             char[] array=str.toCharArray();
11             LinkedHashSet<Character> ldl=new LinkedHashSet<Character>();
12             //for(int i=0;i<array.length;i++){
13             //    ldl.add(array[i]);
14             //}
15             
16             for(int i=array.length-1;i>=0;i--){
17                 ldl.add(array[i]);
18             }
19             
20             for(Character i:ldl){
21                 System.out.print(i);
22             }
23             System.out.println();
24         }
25         sc.close();
26     }
27 }

 

输入字符串,保存在StringBuffer中,再将StringBuffer中的元素,放入HashSet集合中(set集合不允许重复添加相同的元素)

 1 import java.util.*;
 2 
 3 public class Main{
 4     public static void main(String[] args){
 5         Scanner sc=new Scanner(System.in);
 6         String str=sc.nextLine();
 7         StringBuffer sb=new StringBuffer(str);
 8         Set s=new HashSet();
 9         //sb.reverse();
10         //for(int i=0;i<sb.length();i++){
11            // if(s.add(sb.substring(i,i+1))){
12                // System.out.print(sb.substring(i,i+1));
13             //}
14        // }
15         
16         for(int i=sb.length()-1;i>=0;i--){
17             if(s.add(sb.substring(i,i+1))){
18                 System.out.print(sb.substring(i,i+1));
19             }
20         }
21     }
22 }

 

posted @ 2017-04-05 16:55  临江仙zhe  阅读(56)  评论(0)    收藏  举报