我們需要實現乙個叫datastream
的資料結構。並且這裡有兩
個方法需要實現:
void add(number)
// 加乙個新的數
int firstunique()
// 返回第乙個獨特的數
例1:
輸入:
add(1)
add(2)
firstunique()
add(1)
firstunique()
輸出:[1,2]
例2:
輸入:
add(1)
add(2)
add(3)
add(4)
add(5)
firstunique()
add(1)
firstunique()
add(2)
firstunique()
add(3)
firstunique()
add(4)
firstunique()
add(5)
add(6)
firstunique()
輸出:[1,2,3,4,5,6]
你可以假設在呼叫 firstunique 方法時,資料流中至少有乙個獨特的數字
class datastream
/*** @param num: next number in stream
* @return: nothing
*/void add(int num)
/*** @return: the first unique number in stream
*/int firstunique()
int ch = 0;
int ret = int_max;
for(auto it = mymap.begin(); it != mymap.end(); it++)}}
}if(ch == 0)
return -1;
//cout
}};
資料流中第乙個唯一的數字
給乙個連續的資料流,寫乙個函式返回終止數字到達時的第乙個唯一數字 包括終止數字 如果在終止數字前無唯一數字或者找不到這個終止數字,返回 1.您在真實的面試中是否遇到過這個題?yes 樣例給乙個資料流 1,2,2,1,3,4,4,5,6 以及乙個數字5,返回3 給乙個資料流 1,2,2,1,3,4,4...
資料流中第乙個唯一的數字 LintCode
給乙個連續的資料流,寫乙個函式返回終止數字到達時的第乙個唯一數字 包括終止數字 如果在終止數字前無唯一數字或者找不到這個終止數字,返回 1.樣例 給乙個資料流 1,2,2,1,3,4,4,5,6 以及乙個數字 5,返回 3 給乙個資料流 1,2,2,1,3,4,4,5,6 以及乙個數字 7,返回 1...
劍指offer 資料流中第乙個不重複的字元
請實現乙個函式用來找出字元流中第乙個只出現一次的字元。例如,當從字元流中只讀出前兩個字元 go 時,第乙個只出現一次的字元是 g 當從該字元流中讀出前六個字元 google 時,第乙個只出現一次的字元是 l 輸出描述 如果當前字元流沒有存在出現一次的字元,返回 字元。用num陣列表示字元出現的次數,...