Я разработал процедуру, которая должна принять аргумент, вектор с числами в качестве записей, а затем вернуть самое низкое значение.Найти второе наименьшее значение вектора
(define min-number
(lambda (vec)
(define looping
(lambda (i v-min)
(if (= i (vector-length vec))
v-min
(looping (+ i 1) (min v-min (vector-ref vec i))))))
(looping 1 (vector-ref vec 0))
)
)
Теперь я хочу построить процедуру, которая возвращает второе наименьшее значение вектора. Это то, что нужно сделать без преобразования вектора в список. Любые идеи о том, как я могу это сделать? Я не могу вытащить голову из «перечня». Моя голова говорит мне «использовать автомобиль», «использовать cdr» и т. Д., Который не работает в этом конкретном случае. Поэтому любые идеи были бы весьма признательны. Хмм, я думаю, что я все покрыл, если что-то неясно, дайте мне знать.
Спасибо :)
Спасибо, подумайте, что это будет сделано :) – Joel