Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- (defun minimum (yourlist)
- (let ((min-i 0)
- (min-el (nth 0 yourlist)))
- (loop for el in yourlist
- for i from 0
- do (if (< el min-el)
- (progn
- (setf min-el el)
- (setf min-i i))))
- (values min-el min-i)))
- (defun pop-min (yourlist)
- (multiple-value-bind (min-el min-i) (minimum yourlist)
- (remove-if (lambda (x) t) yourlist :start min-i :end (1+ min-i))))
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement