diff options
Diffstat (limited to 'racket/leetcode/lc-217-contains-duplicate.rkt')
-rw-r--r-- | racket/leetcode/lc-217-contains-duplicate.rkt | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/racket/leetcode/lc-217-contains-duplicate.rkt b/racket/leetcode/lc-217-contains-duplicate.rkt new file mode 100644 index 0000000..ca8d193 --- /dev/null +++ b/racket/leetcode/lc-217-contains-duplicate.rkt @@ -0,0 +1,12 @@ +#lang racket +(define/contract (contains-duplicate nums) + (-> (listof exact-integer?) boolean?) + (define nums-hash (make-hash)) + (define (check-next-number nums) + (cond [(empty? nums) #false] + [(hash-ref nums-hash (car nums) #false) #true] + [else (hash-set! nums-hash (car nums) #true) + (check-next-number (cdr nums))])) + (check-next-number nums)) + +(contains-duplicate '(1 2 3))
\ No newline at end of file |