输入一个仅包含小写字母的字符串,去除重复的字母使得所有字母出现且仅出现一次。
你必须保证返回结果是所有可能结果中的以字典排序的最短结果。
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(); } }
结果: