tasks a-s
This commit is contained in:
parent
47bf37c096
commit
b83f433714
12433 changed files with 156208 additions and 123 deletions
15
Task/Queue-Definition/Clojure/queue-definition.clj
Normal file
15
Task/Queue-Definition/Clojure/queue-definition.clj
Normal file
|
|
@ -0,0 +1,15 @@
|
|||
(defn make-queue []
|
||||
(atom []))
|
||||
|
||||
(defn enqueue [q x]
|
||||
(swap! q conj x))
|
||||
|
||||
(defn dequeue [q]
|
||||
(if (seq @q)
|
||||
(let [x (first @q)]
|
||||
(swap! q subvec 1)
|
||||
x)
|
||||
(throw (IllegalStateException. "Can't pop an empty queue."))))
|
||||
|
||||
(defn queue-empty? [q]
|
||||
(empty? @q))
|
||||
Loading…
Add table
Add a link
Reference in a new issue