LeetCode 5404 用棧操作構建陣列 簡單

2021-10-05 22:43:42 字數 1150 閱讀 2123

給你乙個目標陣列target和乙個整數n。每次迭代,需要從list =中依序讀取乙個數字。

請使用下述操作來構建目標陣列target

題目資料保證目標陣列嚴格遞增,並且只包含1n之間的數字。請返回構建目標陣列所用的操作序列。題目資料保證答案是唯一的。

示例 1:

輸入:target = [1,3], n = 3輸出:["push","push","pop","push"]解釋:讀取 1 並自動推入陣列 -> [1]

讀取 2 並自動推入陣列,然後刪除它 -> [1]

讀取 3 並自動推入陣列 -> [1,3]

示例 2:

輸入:target = [1,2,3], n = 3輸出:["push","push","push"]
示例 3:

輸入:target = [1,2], n = 4輸出:["push","push"]解釋:只需要讀取前 2 個數字就可以停止。
示例 4:

輸入:target = [2,3,4], n = 4輸出:["push","pop","push","push","push"]

class solution:

def buildarray(self, target: list[int], n: int) -> list[str]:

lists = [i+1 for i in range(n)]

ans =

for i in range(target[-1]):

if lists[i] in target:

else:

return ans

leetcode 用棧的思路求解

簡單 有效的括號 給定乙個只包括 的字串,判斷字串是否有效。有效字串需滿足 左括號必須用相同型別的右括號閉合。左括號必須以正確的順序閉合。注意空字串可被認為是有效字串。示例 1 輸入 輸出 true 示例 2 輸入 輸出 true 示例 3 輸入 輸出 false 示例 4 輸入 輸出 false ...

Leetcode225 用佇列實現棧

使用佇列實現棧的下列操作 說明 思路 主要關鍵點在於掌握linkedlist 的常用函式,並對其按佇列和棧的特點進行功能組合。class linkedlist傳送門 主要細節體現在push 每當需要push乙個值進入到棧中時 linklist會先把該值放在隊尾 把頭節點摘下 queue.remove...

LeetCode 232 用棧實現佇列

使用棧實現佇列的下列操作 push x 將乙個元素放入佇列的尾部。pop 從佇列首部移除元素。peek 返回佇列首部的元素。empty 返回佇列是否為空。示例 myqueue queue new myqueue queue.push 1 queue.push 2 queue.peek 返回 1 qu...