Какое руководство я должен получить от сдвига, выравнивания и тасования?

В начальной части главы 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-ю главу, там будут некоторые дыры, лучше вернитесь и прочитайте все предыдущие главы по порядку.

Другие вопросы по тегам