1441 用棧操作構建陣列

2021-10-09 22:55:21 字數 1192 閱讀 3037

題目描述:

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

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

push:從 list 中讀取乙個新元素, 並將其推入陣列中。

pop:刪除陣列中的最後乙個元素。

如果目標陣列構建完成,就停止讀取更多元素。

題目資料保證目標陣列嚴格遞增,並且只包含 1 到 n 之間的數字。

請返回構建目標陣列所用的操作序列。

題目資料保證答案是唯一的。

示例 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」]

1 <= target.length <= 100

1 <= target[i] <= 100

1 <= n <= 100

target 是嚴格遞增的

方法1:

主要思路:

(1)模擬過程即可;

(2)從1到n,逐個數字壓入棧中,同時同步判斷目標陣列中的元素;

(3)若是是當前目標陣列中的元素,則只壓入,然後目標陣列索引後移,判斷下乙個;

(4)若不是,則需要壓入和彈出兩個操作;

class

solution

}else

}return res;}}

;

1441 用棧操作構建陣列

給你乙個目標陣列target和乙個整數n。每次迭代,需要從list 中依序讀取乙個數字。請使用下述操作來構建目標陣列target 題目資料保證目標陣列嚴格遞增,並且只包含1到n之間的數字。請返回構建目標陣列所用的操作序列。題目資料保證答案是唯一的。示例 1 輸入 target 1,3 n 3輸出 p...

1441 用棧操作構建陣列

給你乙個目標陣列 target 和乙個整數 n。每次迭代,需要從 list 中依序讀取乙個數字。請使用下述操作來構建目標陣列 target push 從 list 中讀取乙個新元素,並將其推入陣列中。pop 刪除陣列中的最後乙個元素。如果目標陣列構建完成,就停止讀取更多元素。題目資料保證目標陣列嚴格...

1441 用棧操作構建陣列

class solution 中依序讀取乙個數字。請使用下述操作來構建目標陣列 target push 從 list 中讀取乙個新元素,並將其推入陣列中。pop 刪除陣列中的最後乙個元素。如果目標陣列構建完成,就停止讀取更多元素。題目資料保證目標陣列嚴格遞增,並且只包含 1 到 n 之間的數字。請返...