LeetCode每日一題 最近的請求次數

2021-10-04 19:20:21 字數 571 閱讀 9965

題目:寫乙個 recentcounter 類來計算最近的請求。

它只有乙個方法:ping(int t),其中 t 代表以毫秒為單位的某個時間。

返回從 3000 毫秒前到現在的 ping 數。

任何處於 [t - 3000, t] 時間範圍之內的 ping 都將會被計算在內,包括當前(指 t 時刻)的 ping。

保證每次對 ping 的呼叫都使用比之前更大的 t 值。

示例:輸入:inputs = ["recentcounter","ping","ping","ping","ping"], inputs = [,[1],[100],[3001],[3002]]

輸出:[null,1,2,3,3]

我們只會考慮最近 3000 毫秒到現在的 ping 數,因此我們可以使用佇列儲存這些 ping 的記錄。當收到乙個時間 t 的 ping 時,我們將它加入佇列,並且將所有在時間 t - 3000 之前的 ping 移出佇列。

**:

class recentcounter 

public int ping(int t)

}

複雜度分析

每日一題 LeetCode

在陣列中的兩個數字,如果前面乙個數字大於後面的數字,則這兩個數字組成乙個逆序對。輸入乙個陣列,求出這個陣列中的逆序對的總數。示例 1 輸入 7,5,6,4 輸出 5 限制 0 陣列長度 50000 思想是 分治演算法 所有的 逆序對 於 3 個部分 左邊區間的逆序對 右邊區間的逆序對 橫跨兩個區間的...

LeetCode每日一題(題1028)

最近在刷leetcode每日一題,每次做完之後總能有些收穫,所以想著不如每天寫個部落格記錄一下做的題目的解法以及自己寫的時候問題出在 從先序遍歷還原二叉樹 題目大意 給出乙個字串 1 2 3 4 5 6 7 1代表節點的值,前面的 個數代表節點的深度。如果只有乙個子節點,保證這個節點為左子節點。返回...

LeetCode每日一題(題139)

題目 題目大意 給出乙個字串s和乙個字串陣列words,判斷s是否能夠拆分成多個words中的字串。分析 這道題比較簡單的方式應該是採用動態規劃來做。對於任意乙個字串中的區間,可以判斷該區間組成的字串是否在字典中,如果是,則這個區間的真假取決於前面那個區間的真假。給出狀態轉移方程dp i dp j ...