19 lines
623 B
Common Lisp
19 lines
623 B
Common Lisp
(lib 'tree)
|
|
(define tasks (make-bin-tree 3 "Clear drains"))
|
|
(bin-tree-insert tasks 2 "Tax return")
|
|
(bin-tree-insert tasks 5 "Make tea")
|
|
(bin-tree-insert tasks 1 "Solve RC tasks")
|
|
(bin-tree-insert tasks 4 "Feed 🐡")
|
|
|
|
(bin-tree-pop-first tasks) → (1 . "Solve RC tasks")
|
|
(bin-tree-pop-first tasks) → (2 . "Tax return")
|
|
(bin-tree-pop-first tasks) → (3 . "Clear drains")
|
|
(bin-tree-pop-first tasks) → (4 . "Feed 🐡")
|
|
(bin-tree-pop-first tasks) → (5 . "Make tea")
|
|
(bin-tree-pop-first tasks) → null
|
|
|
|
;; similarly
|
|
(bin-tree-pop-last tasks) → (5 . "Make tea")
|
|
(bin-tree-pop-last tasks) → (4 . "Feed 🐡")
|
|
; etc.
|