拿到這道題,我們首先想到的做法是:設定乙個計數器,從字串的第乙個字元開始進行遍歷,遇到字元就開始讓計數器自增,但是我們如何處理不同的字元到底被計數了所少次呢,這時候就比較棘手,那麼我們就來用下面我介紹的這種方法來進行解決。
思路分析:
1)我們知道字元的大小不會超過256,所以我們先設定乙個大小為256的陣列
2)我們開始進行字串的遍歷,將每乙個字元作為陣列的下標進行自增,(其實原理就是每乙個字元都有自己對應的ascii碼值)
3)然後到這一步我們就將字串中每乙個字元對應的次數統計了下來,所以我們再次進行字串的遍歷,找出次數是1的字元,此字元就是我們要找的字元,否則就是沒找到。
**如下:
#includechar find(char* str)
; char *temp = str;
while(*str)
str = temp;
while(*str)
str++;
} return -1;
}int main()
return 0;
}
在乙個字串中尋找另外乙個字串
在乙個字串中尋找另外乙個字串 public class text foundit true break test system.out.println foundit?found it didn t find it 該段程式有點難以理解,主要就是if語句的理解,if searchme.charat ...
在乙個字串中個找到只出現一次的第乙個字元
第一種方式,不使用額外空間 public static void result string s continue else if j s.length 1 2.第二種方式,使用乙個額外的空間來記錄每個字元出現的次數,第一次出現的次數為1的字元就是我們需要的結果,返回該字元就可以了。時間複雜度o n...
js 字串中取得第乙個字元和最後乙個字元
var str hello world 刪除第乙個字元 h,結果為 ello world alert str.slice 1 刪除最後乙個字元 d,結果為 hello worl alert str.substring 0,str.length 1 追問我就是要判斷第乙個好最後乙個字元是否為逗號,是逗...