題目:在字串中找出第乙個只出現一次的字元。如輸入「abaccdeff」則輸出』b』。
方法:用雜湊表(包含256個字元的輔助陣列),掃瞄兩遍。
char firstnotrepeatingchar(char* pstring)
const
int tablesize = 256;
unsigned
int hashtable[tablesize];
for (unsigned
int i = 0; i < tablesize; ++i)
char* phashkey = pstring;
while (*(phashkey) != '\0')
phashkey = pstring;
while (*phashkey != '\0')
phashkey++;
}return
'\0';
}
測試用例:
擴充套件:
定義乙個函式,刪除字串中所有重複出現的字元。如輸入」google」,刪除重複的字元之後的結果是」gole」。
如果兩個單詞中出現的字母相同,並且每個字母出現的次數也相同,則這兩個單詞互為變位詞。例如silent與listen,evil與live。請完成乙個函式,判斷輸入的兩個字串是否互為變位詞。
第乙個只出現一次的字元
題目 在乙個字串中找到第乙個只出現一次的字元。如輸入 abaccdeff,則輸 出b。分析 這道題是 2006年google的一道筆試題。看到這道題時,最直觀的想法是從頭開始掃瞄這個字串中的每個字元。當訪問 到某字元時拿這個字元和後面的每個字元相比較,如果在後面沒有發現重複的字 符,則該字元就是只出...
第乙個只出現一次的字元
題目 在乙個字串中找到第乙個只出現一次的字元,並輸出它在字串中的位置。如輸入 abaccdeff,則輸出 b 1。定義乙個256長度的陣列,乙個用來記錄字元出現的次數。然後在遍歷字元陣列,如果該字元出現了一次,輸出並結束,否則繼續。include using namespace std 在乙個字串中...
第乙個只出現一次的字元
1.問題描述 在字串中找出第乙個只出現一次的字元。例如輸入abaccdeff,則輸出 b。來自 劍指offer 2.分析 我們可以用乙個容器來存放 對應的字元和出現次數 雜湊表 這裡僅僅用陣列來簡單的模擬了一下 第一次掃瞄時將出現的次數存放在表中,第二次掃瞄時掃瞄到次數為1的字元並返回該字元即可。表...