- 博客(7)
- 收藏
- 关注
原创 SICP 习题2.61~2.62 排序表示的adjoin和union-set函数
adjoin函数要注意的是怎样把x插入当前的序列,union-set的写法可以参考书上给出的intersection-set。my.scm文件将给出一些所有代码经常会用到的逻辑。譬如这次的先换行后打印my.scm(define (out x) (newline) (display x))2.62.scm(load "my.scm")(define (element-of-set? x set
2016-07-22 19:14:02 556
原创 SICP 习题2.60 允许元素重复,重构集合操作
element-of-set? 和intersection-set的复杂度急剧上升,而adjoin-set和union-set的复杂度下降了一个O(n)O(n)。在adjoin-set操作和union-set操作比较多,element-of-set?和intersection-set操作比较少的时候(define (element-of-set? x set) (cond ((null? set
2016-07-22 15:14:17 357
原创 SICP 习题2.59 union-set操作
union-set操作的想法就是找出set1中set2里面没有的,set2中没有的和set2放在一起,就是union-set(define (element-of-set? x set) (cond ((null? set) false) ((equal? x (car set)) true) (else (element-of-set? x (cdr set))
2016-07-22 14:49:17 366
原创 QT PySide 连连看小游戏
学了PySide,花了一天时间做出了以前很想写的一个游戏,然后写完主体的逻辑之后就不想再接着往下写了。在windows下写的6*6的方格,总共6种图像,网上找的6张gif图片,然后把大小用windows的画图变成50*50像素的图像,这是点击之前的图像。然后把gif图中白色的像素涂黑变成点击之后的图像(这个也是用windows画图解决的)。刚接触python,感觉格式会很好,但是self这个有点不爽
2016-07-16 21:50:00 1106
原创 SICP 习题2.53~2.55 equal
2.55 : ‘被替换成了(quote)(define (memq item x) (cond ((null? x) false) ((eq? item (car x)) x) (else (memq item (cdr x)))))(newline)(display (list 'a 'b 'c))(newline)(display (list (list
2016-07-01 19:09:18 471
原创 SICP 习题2.43 八皇后问题flatmap嵌套反了
问题在于(queen-cols (- k 1))被执行过多次了,在之前2.42的里面(queen-cols (-k 1))只执行了一次棋盘大小是NN时,运行时间是T∗NNT*N^N,因为在每一层(queen-cols (- k 1))都要被执行N次,一共有N层。
2016-07-01 00:38:53 452
原创 SICP 习题2.42 八皇后问题
想不到第一次写八皇后问题是用的scm写代码的途中遇到一个错误,用let错了,用define对了,应该是编译器的原因,和nil差不多。(define (accumulate op initial sequence) (if (null? sequence) initial (op (car sequence) (accumulate op initial (cdr
2016-07-01 00:24:58 634
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人