查詢乙個字串中第乙個只出現兩次的字元

2021-08-03 23:52:54 字數 523 閱讀 9180

題目:查詢乙個字串中第乙個只出現兩次的字元。比如:「abcdefabcdefabc」中第乙個只出現兩次為『d』,要求時間複雜度為o(n),空間複雜度為o(1)

思路:建立乙個輔助陣列(大小為256),陣列的下標表示字元的ascii碼,遍歷字串,每出現乙個,在對應位置加一,最後遍歷陣列就可以找到第乙個出現兩次的字元

**:char

find_char_instr

( std

:: string 

& str );

for (

size_t

idx

= 0;

idx<

str. size

(); ++

idx) for (

size_t

idx

= 0;

idx<

str. size

(); ++

idx) return

'\0' ;}

int

main

()

查詢乙個字串中第乙個只出現兩次的字元。

題目 查詢乙個字串中第乙個只出現兩次的字元。比如 abcdefabcdefabc 中第乙個只出現兩次為 d 要求時間複雜度為o n 空間複雜度為o 1 由於本體的特殊性,我們可以定義乙個非常簡單的雜湊表。字元 char 是乙個長度為8的資料型別,因此總共有256中可能。於是我們建立乙個長度為256的...

查詢乙個字串中第乙個只出現兩次的字元

問題描述 查詢乙個字串中第乙個只出現兩次的字元。例如 abcdefabcdefabc 中第乙個只出現兩次的為 d 要求時間複雜度為o 1 空間複雜度為o 1 解決思路 1 建立乙個hash表,用來儲存每乙個字元出現的次數,即乙個字元的大小 256 無符號型別 2 對hash表中的每乙個的字元進行初始...

尋找乙個字串中第乙個只出現兩次的字元

2.附加題 查詢乙個字串中第乙個只出現兩次的字元。比如 abcdefabcdefabc 中第乙個只出現兩次為 d 要求時間複雜度為o n 空間複雜度為o 1 解法 利用雜湊表 由於ascii表中一共存在256個字元 所以開闢乙個256大小整型陣列 將這個陣列看做雜湊表,將字元的ascii值當做key...