每日演算法 4月11日 02

2021-10-23 06:18:54 字數 888 閱讀 5569

給定兩個序列,分別為入棧序列和出棧序列,判斷出棧序列是否合理, 注:入棧時可能不是一次性全部入棧,也可能不是一次性全部出棧

例如——

輸入:pushed = [1,2,3,4,5], popped = [4,3,5,1,2]

輸出:false

解釋:1 不能在 2 之前彈出。

首先確定要排除特殊情況,比如給定序列為空或者給定的序列長度是否越界

其次,將入棧序列依次入棧

1)判斷出棧序列是否與當前棧頂元素相同,如果相同則刪除棧頂元素, 棧頂指標回退;

判斷棧頂指標是否指向-1,若指向-1,則返回true,否則返回false;

bool validatestacksequences

(int

* pushed,

int pushedsize,

int* popped,

int poppedsize)

if(poppedsize>

1000

||pushedsize>

1000

)//宣告乙個陣列

int stacked[

1000]=

;//棧頂指標

int stacktop=-1

;// 當前入棧數

int pushstacked=0;

//當前出棧數

int popstacked=0;

while

(pushstacked(stacktop==-1

)return false;

}

我們具體操作的還是陣列,只是使用的是對棧操作時的邏輯結構,比如說

棧頂指標啦,加上棧頂指標指向的話會好理解很多。

每日演算法 4月14日 05

我有話想說.今天本來想再鞏固一下棧的基礎,去leedcode去做了關於棧的練習,結果因為一句 是在操作完之後沒有將top值還原 搞到心態炸了!太難了,各位仁兄寫 一定一定要考慮全面。否則你就是下乙個心態 的我 幸災樂禍 好啦,言歸正傳 請你設計乙個支援下述操作的棧。實現自定義棧類 customsta...

11月4日筆記

一.shell 語言 man help等價於man h.注意點 後命令需要不全。以 開始,為絕對路徑,從根目錄開始查詢。不以 開始,為相對路徑,從當前目錄開始查詢。表示回到上一級目錄。man n item man 用來查詢linux上的手冊頁 item 需要查閱的條目 n 中n若為1 查詢需要查閱的...

PMP每日練習11月25日

2020.11.25 1 專案經理組織了一次群體活動,來討論最近乙個問題的解決方案。會議結束時,產生了多個意見,並分成不同類別進行審查和分析。這使用的是哪種群體創新技術?a.頭腦風暴 b德爾菲技術 c.概念 思維導圖 d.親和圖 答案 d 解析 親和圖 用來對大量創意進行分組的技術,以便進一步審查和...