Какое руководство я должен получить от сдвига, выравнивания и тасования?
В начальной части главы 9 в "Маленьком интриганке" есть несколько примеров, таких как просмотр, сдвиг, выравнивание и случайное перемешивание,
(define looking
(lambda (a lat)
(keep-looking a (pick 1 lat) lat)))
(define shift
(lambda (pair)
(build (first (first pair))
(build (second (first pair))
(second pair)))))
(define align
(lambda (pora)
(cond ((atom? pora) pora)
((a-pair? (first pora)) (align (shift pora)))
(else (build (first pora)
(align (second pora)))))))
(define shuffle
(lambda (pora)
(cond ((atom? pora) pora)
((a-pair? (first pora))(shuffle (revpair pora)))
(else (build (first pora)
(shuffle (second pora)))))))
Я думаю, что я понимаю их в общих чертах, но я не знаю подсказки этих примеров, нужно ли мне какие-то предпосылки, кто-то может мне сказать?
С УВАЖЕНИЕМ
1 ответ
Нет никаких предпосылок для чтения "Маленького интриганки", это довольно замкнутая книга. Если вы читали 9-ю главу, вы уже знаете все, что вам нужно знать, чтобы понять примеры, возможно, вам нужно немного откатиться назад, но будьте уверены, это все есть в книге.
Теперь, если вы только что прыгнули прямо в 9-ю главу, там будут некоторые дыры, лучше вернитесь и прочитайте все предыдущие главы по порядку.