摘要: 题目是这样的:设计讲数组A[0...n-1]中所有奇数移到所有偶数之前的算法,要求不另增加储存空间,且时间复杂度为O(n).以往我用常规的思维会这样设计,设两个整型变量i,j, i指向A[0]所在位置, j指向A[n-1]所在位置. 然后对数组进行遍历,如果发现是奇数,则将A[i]和当前数调换, 如果是偶数,则将A[j]和当前数调换,直到遍历结束.但现在用递归思想重新思考这道题, 设f(n)为奇偶... 阅读全文
posted @ 2007-01-09 20:58 浅蓝の天 阅读(471) 评论(1) 推荐(0) 编辑
摘要: (define (for-each proc items) (cond ((not (null? items)) (proc (car items)) (for-each proc (cdr items))))) 阅读全文
posted @ 2007-01-09 20:14 浅蓝の天 阅读(165) 评论(0) 推荐(0) 编辑
摘要: (define (square-list3 items) (define (append list1 list2) (cond ((null? list1) list2) (else (cons (car list1) (append (cdr list1) list2))))) (define (iter thing answer) (cond ((null? thing) answer) (e... 阅读全文
posted @ 2007-01-09 20:03 浅蓝の天 阅读(212) 评论(0) 推荐(0) 编辑
摘要: (define (last-pair items) (cond ((or (null? items) (null? (cdr items))) items) (else (last-pair (cdr items)))))(define (reverse items) (cond ((null? items) items) (else (append (reverse (cdr items)) (... 阅读全文
posted @ 2007-01-09 19:31 浅蓝の天 阅读(186) 评论(0) 推荐(0) 编辑