2016-03-17 4 views
1

Итак, я пытаюсь найти наименьшее значение двоичного дерева поиска в ракетке и я получаю эту ошибку:Finding минимум бинарного дерева поиска в Ракетка

CADR: нарушение контракта ожидается: (минусы/с любым/с паром) дано:? «нулевого

Моего код выглядит следующим образом:

(определяет минимальный (X (дерево) (если (нулевое дерево) нулевой (если (нуль? (дерево кадр)) (вагон) (минимум (cadr tr ee)))))

Каждый узел имеет структуру (значение, влево, вправо).

+0

Просьба представить доказательства, что это не домашнее задание. – Xzenon

+0

Это домашнее задание? – user43389

ответ

0

Это похоже на проблему с вашими тестовыми данными, а не с самой процедурой minimum. Например, это работает для меня:

(define tree 
    (list 5 (list 3 (list 1 null null) 
        (list 4 null null)) 
      (list 6 null null))) 

(minimum tree) 
=> 1 
Смежные вопросы