描述
找出字符串中第一个只出现一次的字符
数据范围:输入的字符串长度满足 1 \le n \le 1000 \1≤n≤1000
输入描述:
输入一个非空字符串
输出描述:
输出第一个只出现一次的字符,如果不存在输出-1
示例1
输入:asdfasdfo
输出:o
import java.util.*;
public class Main {
public static void main(String[] args) {
Scanner sc=new Scanner(System.in);
while(sc.hasNext()){
String s=sc.nextLine();
char[] ch=s.toCharArray();
int[] count=new int[128];
for(int i=0;i<s.length();i++){
count[ch[i]]++;
}
boolean flag=false;
for (int i = 0; i < ch.length; i++) {
if (count[ch[i]]==1){
System.out.println(ch[i]);
flag=true;
break;
}
}
if (flag==false)
System.out.println(-1);}
}
}
1.创建count数组,用于计数
2.遍历字符数组,每次遍历到该字符, 在count数组中对应的asc码位置++
3.遍历字符数组,若该字符在count数组中对应的asc码位置计数为1;输出该字符。