编程珠玑(1)

原创 2006年06月16日 10:13:00

 

这周借了本 “编程珠玑”,书不大,200多页,本以为能一周看完的,结果看完第1章就头大了。在此做点笔记,说不定找工作用得上。

第1章,
位图排序,一位代表一个数(如a[10]=1 表示数10存在)
问题里面还有一个 选择问题,即n个数里随机取k个不同的数。开始看到题目的答案就蒙了,后来想想其实很简单。
设数组为a[0]...a[n-1]
1、j=n
2、i=ran(0,j)     //0..j中随机
3、取出a[i],显示
4、将a[i]和a[j-1]交换
5、j--;
6、如果已有k个,结束;否则,goto 2
首先在0..n-1中取一个,然后取走的和最后一个交换,
在0..n-2中再取,。。。。。
。。。。。。

空间和时间的矛盾似乎有很长时间了,动态规划就是典型的空间换时间的策略。

第2章,
这章我一看到问题A就头疼了,看分析竟然没看懂,直到看到答案我才理解了。二分法并不需要数组或其他结构是排好序的,只要能二分就行。
问题B中学搞过,大学想起过一次,现在又忘了。abc --> a'b'c' --> (a'b'c')' = cba  其中T'是T的逆序
顺便说一句,补充材料的程序很有幽雅(?)。

《编程珠玑》---笔记。浏览此文,一窥此书。

第一章: 磁盘排序:对于一个提出的问题,不要未经思考就直接给出答案。要先深入研究问题,搞清楚这个问题的特点,根据这个特点,可能有更好的解决方案。   比如:文中:最初的需求只是“我如何对磁盘文件排序”...
  • yang_yulei
  • yang_yulei
  • 2014年06月30日 23:53
  • 10114

《编程珠玑》高清pdf版

下载地址:网盘下载 作者简介 编辑 Jon Bentley是位于新泽西州Murray Hill的朗讯贝尔实验室计算机科学研究中心的技术委员会委员,Jon自1998...
  • cf406061841
  • cf406061841
  • 2017年05月27日 18:57
  • 2581

编程珠玑 第二版 第三章 习题答案

Exercise 1、在网上看到很多人都是先用数组来
  • spencerzou
  • spencerzou
  • 2014年05月27日 17:39
  • 1316

编程珠玑——第一章习题解答

1、如果不缺内存,如何使用一个具有库的
  • shuitawuhen
  • shuitawuhen
  • 2014年10月22日 13:07
  • 1549

编程珠玑之第三章习题2

问题描述: 问题解析: 1、如果咨询研究其规律,会发现其输入的km的a的值由上面公式就可以递推到! 2、研究其性质,会发现a[1] = c[k+1]是永远不会变得,那么由a[1]就可以向后推得知a...
  • JohnnyHu90
  • JohnnyHu90
  • 2015年01月15日 23:54
  • 1040

编程珠玑第二章习题

1、提供单词和词典,找到该单词的所有变位词,可以事先花时间和空间处理下该词典。 因为要查找变位词,事先遍历词典,得到每个单词签名,并建立签名列表,签名列表的每个项包含了该签名的所有单词。有了这个列表,...
  • chenzujie
  • chenzujie
  • 2013年08月10日 11:57
  • 1856

编程珠玑:第三章 数据决定程序结构 习题解答

一.题目描述:本书出版之时,美国的个人收入所得税分为5种不同的税率,其中最大的税率大约为40%.以前的情况则更为复杂,税率也更高。下面所示的程序文本采用25个if语句的合理方法来计算1978年的美国联...
  • tangli555
  • tangli555
  • 2016年09月13日 21:44
  • 325

《编程珠玑》 学习收获

很早就买了这本书,不过一直没看,听师哥师姐们说,要想进互联网公司(dui)...
  • dcj0913
  • dcj0913
  • 2014年09月17日 10:41
  • 1043

《编程珠玑》心得

每月一本,老规矩,还是先谈总体感受,这是一本将优化进行到底的书,经典之中的经典,对算法有很强的启迪性,面试大公司的必读书籍之一,总之就是不错。还是分别讲要点吧 第一章:千万级大数据排序问题引出位图算法...
  • songzi1111
  • songzi1111
  • 2015年04月11日 01:30
  • 633

编程珠玑——电话号码排序

编程珠玑第一章,电话号码排序,问题是这样的,给你大约1000万个
  • wdgxwzz008
  • wdgxwzz008
  • 2014年11月12日 15:44
  • 402
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:编程珠玑(1)
举报原因:
原因补充:

(最多只允许输入30个字)