1. 程式人生 > >JAVA 去除重複字母

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();
	}
}

結果: