JAVA 去除重复字母

输入一个仅包含小写字母的字符串,去除重复的字母使得所有字母出现且仅出现一次。

你必须保证返回结果是所有可能结果中的以字典排序的最短结果。


import java.util.Arrays;
import java.util.Scanner;
public class Hello {

	public static void main(String[] args) {
		String s;
		Scanner reader=new Scanner(System.in);
		s=reader.nextLine();       //输入字符串
//		System.out.println(s);
		char c[]=s.toCharArray();  //转成字符数组
		int i,j;
		int length=0;		//记录有几个相同的字母
		for(i=0;i<c.length-1;i++) {   //如果有重复的字母就把重复的字母置为0
			for(j=i+1;j<c.length;j++) {
				if(c[i]==c[j] && c[i]!=0 && c[j]!=0) {
					c[j]=0;
					length++;
				}
			}
		}
/*		for(i=0;i<c.length;i++) {
			System.out.print(c[i]);
		}                               
		System.out.print("\n");      */
		Arrays.sort(c);              //排序
/*		for(i=0;i<c.length;i++) {
			System.out.print(c[i]);
		}		
		System.out.print("\n");      */
		for(i=length;i<c.length;i++) {   //输出结果
			System.out.print(c[i]);
		}		
		System.out.print("\n");
		reader.close();
	}
}

结果:


猜你喜欢

转载自blog.csdn.net/abc1498880402/article/details/80335347