摘要:这是一个大学教授写的,非常好,原文:http://classes.soe.ucsc.edu/cmps112/Spring03/languages/scheme/SchemeTutorialA.htmlIntroductionStructureSyntaxTypesSimpleCompositeType PredictesNumbers, Arithmetic Operators, and FunctionsArithmetic OperatorsListsBoolean ExpressionsLogical OperatorsRelational OperatorsConditional Ex 阅读全文
python模块学习之random
2013-11-13 20:46 by youxin, 339 阅读, 0 推荐, 收藏,
摘要:模块源码:Source code:Lib/random.py文档:http://docs.python.org/2/library/random.html常用方法:random.random()Return the next random floating point number in the range [0.0, 1.0).random.randint(a,b)包括bReturn a random integerNsuch thata b,则生成的随机数n:b <= n <= a。如果 a <b, 则a <= n <= b。print random.unif 阅读全文
《how to design programs》12章函数复合
2013-11-13 19:19 by youxin, 490 阅读, 0 推荐, 收藏,
摘要:我们写代码时要学会适应辅助函数。作者提出了一个问题,如何对一个表排序。排序函数读取一个表,产生另一个表。排序函数的合约和用途如下:(sort empty);; expected value: empty(sort (cons 1297.04 (cons 20000.00 (cons -505.25 empty))));; expected value: (cons 20000.00 (cons 1297.04 (cons -505.25 empty)))完整程序:(实际上就是插入排序)#lang racket;12;;sort:list-of-numbers->list-of-numbe 阅读全文
VC6.0 显示代码行号和WndTab插件
2013-11-12 21:24 by youxin, 1763 阅读, 0 推荐, 收藏,
摘要:VC6.0是一款比较稳定的功能强大的IDE,目前也有很多人在使用。但美中不足的是它不能像其他IDE那样显示行号。这里需要用到一个插件VC6LineNumberAddin,下载地址:http://files.cnblogs.com/emanlee/VC6LineNumberAddin.rar(不要去这个下载,要注册)。(使用步骤:1.将文件中的VC6LineNumberAddin.dll拷贝到目录C:\Program Files\Microsoft Visual Studio\Common\MSDev98\AddIns;2.打开vc6,菜单栏:Tools -> customize -> 阅读全文
lisp构造表
2013-11-12 19:31 by youxin, 935 阅读, 0 推荐, 收藏,
摘要:CONS 操作符我们刚刚学习了如何拆分一个表,现在学习如何合并一个表。 CONS 操作符就是做这件事情的。假设有一个列表 (1 2 3) ,我们做一下 CAR 操作:(car '(1 2 3))返回 1 。我们再做一下 CDR 操作:(cdr '(1 2 3))返回 (2 3) 。CONS 操作符的作用就是将拆开的表连起来。(cons 1 '(2 3))返回的将是原来的列表 (1 2 3) 。S 表达式cons 操作符的第二个参数要是一个列表,才能返回一个列表。否则:(cons 2 3)返回(2 . 3)这次中间有一个点。为什么呢?因为,表实际上是一个树(二叉树)。我们 阅读全文
《how to design programs》第11章自然数
2013-11-12 19:12 by youxin, 362 阅读, 0 推荐, 收藏,
摘要:这章让我明白了原来自然数的定义本来就是个递归的过程。我们通常用枚举的方式引出自然数的定义:0,1,2,3,等等(etc).最后的等等是什么意思?唯一能把等等从描述自然数的枚举方法中去除的方法是自引用,第一种尝试是:0 is a natural number.Ifnis a natural number, then one more thannis one, too.虽然这种描述并不是十分严格,但对于scheme格式的数据定义来说,他是一个很好的开始:natural-number(自然数是以下2者之一1。02.(add1 n) 如果n个自然数0是第一个自然数(add1 0)是下一个,接着就明显了 阅读全文
《how to design programs》第10章表的进一步处理
2013-11-12 16:13 by youxin, 286 阅读, 0 推荐, 收藏,
摘要:返回表的函数:下面是一个求工资的函数:;; wage : number -> number;; to compute the total wage (at $12 per hour);; of someone who worked for h hours(define (wage h) (* 12 h))显示,只能求单个人的工资,我们相求多个人的工资,于是想传入一个list过去:;; hours->wages : list-of-numbers -> list-of-numbers;; to create a list of weekly wages from a list 阅读全文
数据挖掘模拟退火算法(《集体智慧编程》第5章优化)
2013-11-12 16:03 by youxin, 609 阅读, 0 推荐, 收藏,
摘要:一. 爬山算法 ( Hill Climbing ) 介绍模拟退火前,先介绍爬山算法。爬山算法是一种简单的贪心搜索算法,该算法每次从当前解的临近解空间中选择一个最优解作为当前解,直到达到一个局部最优解。 爬山算法实现很简单,其主要缺点是会陷入局部最优解,而不一定能搜索到全局最优解。如图1所示:假设C点为当前解,爬山算法搜索到A点这个局部最优解就会停止搜索,因为在A点无论向那个方向小幅度移动都不能得到更优的解。二. 模拟退火(SA,Simulated Annealing退火)思想 爬山法是完完全全的贪心法,每次都鼠目寸光的选择一个当前最优解,因此只能搜索到局部的最优值。模拟退火其实也是一种贪心算法 阅读全文
《编程珠玑》第二章 aha算法
2013-11-12 15:47 by youxin, 1065 阅读, 0 推荐, 收藏,
摘要:A题:给定一个最多包含40亿个随机排列的32位整数的顺序文件,找出一个不在文件中的32位整数。 1、在文件中至少存在这样一个数? 2、如果有足够的内存,如何处理? 3、如果内存不足,仅可以用文件来进行处理,如何处理?答案:1 int 为32位有(expt 2 32) 4294... 阅读全文
转:SCHEME 语言是怎么来的 -1
2013-11-12 11:31 by youxin, 613 阅读, 0 推荐, 收藏,
摘要:导言Scheme 是 LISP 的一个方言(dialect)。著名的 SICP 书就是以 Scheme 为教学语言(实际上 SICP 的作者就是 Scheme 的作者)。 虽然 Scheme 本身只是一个精简化的适合教学的语言,可它首先提出的一些重要的思想,引领了新一代的LISP语言的出现。 实际上, LISP 语言发展的历史是连续的,之所以我在这里人为的把 LISP 的发展史划分为上一代和现代,是因为随着 Scheme 首次引入并规范化了一些重要概念, LISP 语言出现了很多以前从来没有大规模普及的新特性。以 Common LISP 为代表的 LISP 语言也因为这些新特性,而焕发了第二春 阅读全文
浙公网安备 33010602011771号