How to resolve the algorithm Tree traversal step by step in the Quackery programming language

Published on 12 May 2024 09:40 PM

How to resolve the algorithm Tree traversal step by step in the Quackery programming language

Table of Contents

Problem Statement

Implement a binary tree where each node carries an integer,   and implement:

Use those traversals to output the following tree: The correct output should look like this:

Let's start with the solution:

Step by Step solution about How to resolve the algorithm Tree traversal step by step in the Quackery programming language

Source code in the quackery programming language

  [ this ]                  is nil         (   --> [ )

  [ ' [ 1
        [ 2
          [ 4
            [ 7 nil nil ]
            nil ]
          [ 5 nil nil ] ]
        [ 3
          [ 6
            [ 8 nil nil ]
            [ 9 nil nil ] ]
          nil ] ] ]         is tree        (   --> [ )

  [ dup nil = iff drop done
    unpack swap rot
    echo sp
    recurse
    recurse ]               is pre-order   ( [ -->   )

  [ dup nil = iff drop done
    unpack unrot
    recurse
    echo sp
    recurse ]               is in-order    ( [ -->   )

  [ dup nil = iff drop done
    unpack swap
    recurse
    recurse
    echo sp ]               is post-order  ( [ -->   )

  [ queue swap push
    [ dup empty? 
        iff drop done
      pop
      dup nil = iff 
        drop again
      unpack
      rot echo sp 
      dip push push 
      again ] ]             is level-order ( [ -->   )

  tree pre-order   cr
  tree in-order    cr
  tree post-order  cr
  tree level-order cr

  

You may also check:How to resolve the algorithm Horner's rule for polynomial evaluation step by step in the Bracmat programming language
You may also check:How to resolve the algorithm Secure temporary file step by step in the NetRexx programming language
You may also check:How to resolve the algorithm Hello world/Text step by step in the Jack programming language
You may also check:How to resolve the algorithm Ackermann function step by step in the C++ programming language
You may also check:How to resolve the algorithm Sort disjoint sublist step by step in the pascal programming language