看板 TransCSI 關於我們 聯絡資訊
※ 引述《forris (喬巴)》之銘言: : ※ 引述《undeaduck (undeaduck)》之銘言: : : 有四題,麻煩了!!!! : : 1.如圖(2)所示之樹,將其二元化後做中序追縱(inorder traversal),則所拜訪 : : 的節點順序 : : 為 : : (A)ABCDEFGHI : : (B)EFBCGHIDA : : (C)EBFACGDHI : : (D)EBFCAGHDI : : 圖2:http://www.badongo.com/pic/4499056 : : 另外可以請問什麼是二元化嗎?之前學的時候沒有聽過,找網頁也沒有!! : : 答案是給我B : 二元化的意思是把一般樹化成二元樹,圖是一般樹。 : 用 left-most-child-next-right-sibling 法 : 原圖: : A : ╱ ︱ ╲ : B C D : ╱ ╲ ╱∕﹨ : E F G H I : 化成二元樹: : A : ╱ : B : ╱ \ : E C : \ \ : F D : / : G : \ : H : \ : I : 再去做中序走訪就行了 了解,感恩!!! : : 2.一顆二元樹以中序追蹤的順序是ECFBDAHG,以後序追蹤的是EFBCHGAD,則以前序 : : 追蹤的是 : : (A)ABDGCEHF : : (B)ABCDEFGH : : (C)DECFBAHG : : (D)DCEBFAHG : : 答案是給B : : 可是我有問題的是"不是以後序追蹤的話最後一個就是根嗎?如果是根的話再以前序 : : 追蹤的話應該是C或D答案才對?可是他給我的是B?想問是的是個問題 ? : 可能是答案錯了吧 嗯!!!這樣我就比較確定我的想法了,謝謝!! : : 3.假設指令PUSH X動作是將暫存器X的內容放入STACK中,指令POP X動作是從STACK中 : : 取出一個數目放至暫存器X中,X可為任意暫存器,若暫存器A,B,C,D的內容分別是 : : 18,19,20,21時,依序執行PUSH A,PUSH B,PUSH C,PUSH D,PUSH D,PUSH C,PUSH B : : ,PUSH A,PUSH B後,暫存器A的內容將為 : : (A)18 (B)19 (C)20 (D)21 : : 答案給的是B----->覺得怪怪的,可否說明一下,看有沒有跟我想的一樣?麻煩了 : 他要問 stack 後的最上面一個值是多少? : PUSH A,PUSH B,PUSH C,PUSH D,PUSH D,PUSH C,PUSH B ,PUSH A,PUSH B 18 19 20 21 21 20 19 18 19 : 我算是 19---->請問你是這樣推的嗎?上方 : push A 指的是 push A 的值,依此類推 : : 4.承3,現在假設指令PUTQ X動作是將暫存器X的內容放入QUEUE,指令GETQ X 是貯 : : 列中取出一個PUTQ A,PUTQ B,GETQ C,GETQ D,PUTQ C,PUTQB,GETQ A,GETQ B後 , : : 暫存器A的內容將為(A)18 (B)19 (C)20 (D)21 : : 答案是A---->可否與3一樣說明一下呢?謝謝!!!! : 我覺得這題怪怪 : queue 裡面是空的,資料都被取出來 空的是指 ????可以說一下嗎?麻煩了!!! : 最後一個值是 19 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 219.68.121.4