最新文章列表

SICP学习笔记——丘奇计数与“数”的本质【脑洞大开】

丘奇计数与“数”的本质 学习SICP有一段时间了,对Lambda表达式以及过程为参数等特性的强大并没有概念,直到看到习题2.6中提到的丘奇计数(Church counting),才有种脑洞大开,恍然大悟的赶脚,便迫不及待的和大家分享一下——尼玛,原来“数”还可以这样玩! 首先,题目抛砖引玉,丢出了两个定义,一个是0的定义:   (define zero (lambda (f)(la ...
t1174779123 评论(1) 有3611人浏览 2014-11-17 16:00

SICP读书笔记-huffman编码的实现

huffman 编码是一种变长前缀式编码,通过利用被编码消息中符号的出现频率(频率出现越高的用越少的码),可以有效的节约空间。在 SICP 的2.3.4节通过实现一个huffman编码树来阐述通过表和数据抽象去操作集合和数的例子。   构建 huffman 编码树 huffman 树以表的方式来表示,将树分为 叶子节点*和 *非叶子节点 ('leaf symbol weigh ...
chiyx 评论(0) 有2004人浏览 2014-03-30 22:52

SICP学习笔记 2.3.2 实例:符号求导

    练习2.56 (define (deriv exp var) (cond ((number? exp) 0) ((variable? exp) (if (same-variable? exp var) 1 0)) ((sum? exp) (make-sum (deriv (addend exp) var) (deriv (augend ...
SavageGarden 评论(0) 有1369人浏览 2012-12-12 09:59

SICP学习笔记 2.3.1 引号

    练习2.53 (a b c) ((george)) ((y1 y2)) (y1 y2) #f #f (red shoes blue socks)       练习2.54 (define (equal? a b) (cond ((and (null? a) (null? b)) true) ((null? a) false) ...
SavageGarden 评论(0) 有1124人浏览 2012-12-11 21:54

SICP学习笔记 2.2.4 实例:一个图形语言

    练习2.44 (define (up-split painter n) (if (= n 0) painter (let ((smaller (up-split painter (- n 1)))) (below painter (beside smaller smaller)))))         练习2.45 ...
SavageGarden 评论(0) 有1358人浏览 2012-12-11 21:49

SICP学习笔记 2.2.3 序列作为一种约定的接口

    练习2.33 ;; map过程即为使用过程p作用x, 然后再合并作用y后的结果 (define (map p sequence) (accumulate (lambda (x y) (cons (p x) y)) '() sequence)) ;; append过程为合并两个列表, 则初始值为空表, 要传入的列表为枚举两个参数列表的元素组成的列表 (define ( ...
SavageGarden 评论(0) 有1105人浏览 2012-09-14 17:48

SICP学习笔记 2.2.2 层次性结构

    练习2.24 ;; 嵌套结构的list 1 ]=> (list 1 (list 2 (list 3 4))) ;Value : (1 (2 (3 4))) * / \ 1 * / \ 2 * / \ 3 4       练习2.25 ;; (1 3 (5 7) 9) 1 ]=> (defi ...
SavageGarden 评论(0) 有1289人浏览 2012-09-05 15:54

SICP学习笔记 2.2.1 序列的表示

    练习2.17 ;; 直接利用已经实现的list-ref和length过程即可 (define (last-pair items) (if (null? items) (display "null") (list-ref items (- (length items) 1))))       练习2.18 ;; 翻 ...
SavageGarden 评论(0) 有1225人浏览 2012-08-31 17:31

从church numerals 理解数据抽象

        现在到了数学抽象中最关键的一步:让我们忘记这些符号所表示的对象。(数学家)不应在这里停步,有许多操作可以应用于这些符号,而根本不必考虑它们到底代表着什么东西。   --- sicp (第二章 数据抽象)      邱奇数可以帮我们充分理解上面这句话和数据抽象的含义。(我的读书笔记见:http://book.douban.com/people/xulao/annotation/ ( ...
pengpeng 评论(0) 有2309人浏览 2012-03-17 17:20

SICP习题1.6

自己没想明白这道题,答案是 cloverprince 给的一个CSDN的链接 http://blog.csdn.net/xuanyun/article/details/1331872
umeit 评论(2) 有1047人浏览 2011-08-15 17:44

SICP习题1.5

应用序,会先对运算符 test 和运算单元 0 和 (p) 进行求值,在求值运算单元 (p) 时就会出现死循环。 (test 0 (p)) 正则序,是先不求出运算对象的值,而是直到实际需要它的值时才去运算求值。应当先将运算对象表达式 (p) 直接代换形式参数: (if (= 0 0) 0 (p)) 这时条件表达式 if 的求值为 0,所以 (p) 不被要求做运算,也就不可能有死循环了。
umeit 评论(0) 有882人浏览 2011-08-15 15:36

最近博客热门TAG

Java(141747) C(73651) C++(68608) SQL(64571) C#(59609) XML(59133) HTML(59043) JavaScript(54918) .net(54785) Web(54513) 工作(54116) Linux(50906) Oracle(49876) 应用服务器(43288) Spring(40812) 编程(39454) Windows(39381) JSP(37542) MySQL(37268) 数据结构(36423)

博客人气排行榜

    博客电子书下载排行

      >>浏览更多下载

      相关资讯

      相关讨论

      Global site tag (gtag.js) - Google Analytics