50 2字元流中第一次出現一次的字元

2021-10-03 15:48:53 字數 540 閱讀 9888

字元流中第乙個出現的字元

解法:因為是要動態的統計第一次出現的第乙個字元,所以每一次找第乙個出現的字元的時候都要對記錄字元位置的陣列進行遍歷。-1表示從未出現過,-2表示出現多於一次,0~max表示第一次出現的位置。

#include #include using namespace std;

#define main50_2 main

class solution2 ;

void insert(char a)

int minindex = numeric_limits::max();

char firstonce = ' ';

for(int i=0;i<256;i++)

}return firstonce;

}private:

vectorocc; // -1 未出現,-2 出現多於一次,0~ 第一次出現的位置

int index;

};int main50_2()

第一次出現一次的字元

題目 在字串中找出第乙個出現一次的字元。如輸入 abaccdeff 則輸出 b 分析 最直觀的解法從頭掃瞄這個字串中的每乙個字元。當訪問到某個字元的時候拿這個字元和後面的字元相比較,如果在後面沒有發現重複的字元,那該字元就是只出現一次的字元。如果字串有n個字元,每乙個字元可能與後面的o n 個字元比...

第一次只出現一次的字元

include include includechar firstnotrepeatingchar char pstring if pstring null return 0 const int tablesize 256 unsigned int hashtable tablesize for u...

第一次只出現一次的字元

在字串中找出第乙個只出現一次的字元。如輸 abaccdeff 則輸出 b include string include map include iostream using namespace std 法1 用map o nlogn char firstnotrepeatedchar0 char s...