看板 TransCSI 關於我們 聯絡資訊
※ 引述《walks (蹦蹦跳跳)》之銘言: : 不同編號的元素 : 規定 必須依編號順序由小到大進入堆疊,離開順序則不限定, : 但整個過程需遵守堆疊後進先出的規則,其結果可以產生不同的排序順序. : 依題意 : 有編號1,2,3的三個元素 : 欲用一個堆疊做排列 : 請問有幾種排列順序 : 答案是 : 123 : 132 : 213 : 231 : 321 : 五種 : 想請問一下 為什麼 不包含312 (假設 由小到大 132 也不符合呀) ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 必須依編號順序由小到大進入堆疊!!! 也就是說 先看1 的情況 再來 2 、3 push(1) pop(1) push(2) pop(2) push(3) pop(3) => 123 push(1) pop(1) push(2) push(3) pop(3) pop(2) => 132 push(1) push(2) pop(2) pop(1) push(3) pop(3) => 213 push(1) push(2) pop(2) push(3) pop(3) pop(1) => 231 push(1) push(2) push(3) pop(3) pop(2) pop(1) => 321 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 312 你要3先出來就是說你1、2的動作都是push到stack裡面了 所以才可以push(3) 又pop(3) 出來 再來 stack的觀念就是 First-in last-out or last-in first-out 所以只有2先出來1才能有動作。 -- -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 210.60.64.106