儲存使用者歷史操作 雙端佇列應用

2021-10-04 07:42:16 字數 637 閱讀 6273

在許多應用類軟體的開發中都需要有儲存使用者歷史操作的功能,例如word需要儲存使用者的編輯操作歷史,瀏覽器需要儲存使用者瀏覽網頁的歷史,搜尋欄需要儲存最近的搜尋記錄等。請編寫程式儲存使用者最近的n條操作記錄,並將其按照時間順序(由近到遠)輸出。

input

設定軟體需要最大保留的歷史操作條數n(1<=n<=50)

使用者的歷史操作序列(數值可能大於n)且操作序列用大寫字母來表示。

output

最近的n條操作序列(若操作序列長度小於n,則全部輸出)

*

*input**5

a b c d

**output*

*d c b a

**input**5

a b c d e f g

**output*

*g f e d c

#include

#include

using

namespace std;

intmain()

}for

(int i =

0; i < n; i++

)else

break;}

return0;

}

c 雙端佇列應用 單調佇列

一道經典題目 講到單調佇列必定會講的乙個題目 滑動視窗 講單調佇列前先來乙個需要用到的資料結構 雙端佇列 deque 也可以用陣列進行模擬 我們需要用到的函式有這些 因為我只學我要用到的0.0 建立 deque int que 隊列為空 que.empty 佇列清零 que.clear 隊尾元素 q...

雙端佇列deque的應用

collections模組作為基礎資料型別的一種擴充套件,提供了更為豐富的資料結構支援。和list相比,雙端佇列deque在陣列的首部和尾部進行增加和刪除元素的時間複雜度都為o 1 而list在陣列尾部進行操作的時間複雜度為o 1 在首部進行增加刪除資料的時間複雜度為o n 涉及到整個陣列元素的移動...

雙端佇列deque的應用

collections模組作為基礎資料型別的一種擴充套件,提供了更為豐富的資料結構支援。和list相比,雙端佇列deque在陣列的首部和尾部進行增加和刪除元素的時間複雜度都為o 1 而list在陣列尾部進行操作的時間複雜度為o 1 在首部進行增加刪除資料的時間複雜度為o n 涉及到整個陣列元素的移動...