int main(int argc, const char * argv[]) {
char string[100]={};
int count=0;
while (scanf("%c",&string[count]),string[count]!='\n') {//输入字符串并且求得字符串有效长度(既可见长度)
count++;
}
for (int i=0; i<count; i++) {//遍历字符串
int j=i;
while (j<count&&string[++j]!=string[i]) {//判断当前i字符后有没有字符与之相同,直到字符串结尾
}
if (string[j]==string[i]) {//当有一样的打印该字符,并退出程序
printf("%c",string[j]);
return 0;
}
}
return 0;
}
public class FindFirstTwiceChar { public static void main(String[] args) { String s = "qywcel23tld"; System.out.println(new FindFirstTwiceChar().find(s)); } public char find(String str) { char[] charArray = str.toCharArray(); int length = str.length(); for(int i = 1; i < length; i++) { for(int j = 0; j < i; j++) { if(charArray[i] == charArray[j]) { return charArray[i]; } } } return 0; } }
function find3(str){ str=String(str); var len=str.length; var count=1; var occur=""; for (var i = 0; i < len-1; i++) { for (var j = i+1; j < len; j++) { if(str[i]==str[j]){ ++count; occur=str[j] } if(count>=3){ return occur; } } occur="" count=1; } return count>=3?occur:""; }
//双层for循环解决方案 #include <stdio.h> #include <stdlib.h> #include <string.h> int main() { char str[64] = "qywyer23tdd"; int i,j; char ch; for(i = 0;i < strlen(str);++i) { ch = str[i]; for(j = i+1;j < strlen(str);++j) { if(ch == str[j]) printf("%c",str[i]); i = strlen(str); break; } } }
public static Character firstDup(String s){
Set<Character> set = new HashSet<Character>();//可利用set重查来实现
char[] string = s.toCharArray();
for(char tmp : string){
if(set.contains(tmp)){
return tmp;
}else{
set.add(tmp);
}
}
return null;
}
#include <stdio.h> int main() { char flag[256]; memset(flag,0x00,sizeof(flag); const char * str = "qywyer23tdd"; const char * p = str; while(0!=*p) { if ( flag[(unsigned char)(*p)]!=0x00 ) { printf("%c\n"); break; } flag[(unsigned char)(*p)] = 0x01; ++p; } return 0; }
public static Character firstDup(String s){ HashMap<Character, Integer> charCountMap = new HashMap<>(); for(int i = 0; i < s.length(); i++){ if(charCountMap.containsKey(s.charAt(i))){ return s.charAt(i); }else charCountMap.put(s.charAt(i), 1); } return null; }使用hashmap