資料流中第乙個唯一的數字 LintCode

2021-08-11 12:11:02 字數 712 閱讀 3836

給乙個連續的資料流,寫乙個函式返回終止數字到達時的第乙個唯一數字(包括終止數字),如果在終止數字前無唯一數字或者找不到這個終止數字, 返回 -1.

樣例:

給乙個資料流 [1, 2, 2, 1, 3, 4, 4, 5, 6] 以及乙個數字 5, 返回 3

給乙個資料流 [1, 2, 2, 1, 3, 4, 4, 5, 6] 以及乙個數字 7, 返回 -1

思路:

利用set1存放所有出現的數字,que存放第一次出現的數字(即在set1中不存在),

set2存放至少出現兩次的數字。當que的頭部在set2中,刪除頭部。

如果沒有找到目標數字,返回-1;否則,當que為空,返回-1,不為空,返回隊頭。

#ifndef c685_h

#define c685_h

#include

#include

#include

#include

using

namespace

std;

class solution

else}}

else

break;}}

if (flag)

return -1;

else

return que.empty() ? -1 : que.front();

}};#endif

資料流中第乙個唯一的數字

給乙個連續的資料流,寫乙個函式返回終止數字到達時的第乙個唯一數字 包括終止數字 如果在終止數字前無唯一數字或者找不到這個終止數字,返回 1.您在真實的面試中是否遇到過這個題?yes 樣例給乙個資料流 1,2,2,1,3,4,4,5,6 以及乙個數字5,返回3 給乙個資料流 1,2,2,1,3,4,4...

資料流中第乙個獨特的數 II

我們需要實現乙個叫datastream的資料結構。並且這裡有兩個方法需要實現 void add number 加乙個新的數 int firstunique 返回第乙個獨特的數 例1 輸入 add 1 add 2 firstunique add 1 firstunique 輸出 1,2 例2 輸入 a...

leetcode 字串中的第乙個唯一數字

題目 給定乙個字串,找到它的第乙個不重複的字元,並返回它的索引。如果不存在,則返回 1。示例 s leetcode 返回 0 s loveleetcode 返回 2 提示 你可以假定該字串只包含小寫字母。解題思路 線性時間複雜度解法 這道題最優的解法就是線性複雜度了,為了保證每個元素是唯一的,至少得...