aboutsummaryrefslogtreecommitdiff
path: root/racket/leetcode/lc-217-contains-duplicate.rkt
blob: ca8d1934865ac5e539f49ab03fe54599269b47f5 (plain)
1
2
3
4
5
6
7
8
9
10
11
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))