当前位置:主页 > 论文百科 > 英文数据库 >

1、编程珠玑笔记一开篇

发布时间:2017-01-13 21:18

  本文关键词:编程珠玑,由笔耕文化传播整理发布。


1. 编程珠玑笔记一开篇

从事于IT行业,如果不会编程,那蛤蟆只能呵呵了。

有些人将编程认识为敲字,所以一直是码农。有些人将编程认识为COPY,所以一直是搬运工。我们不是工程师,我们只是IT的搬运工~

其实编程可以不一样,是一个洞察力和创造力的集合。需要我们不停磨练编程技巧和基本的设计原理。

1、 开篇

是一个外部排序的问题,题目如下图1:

的确,一般我们想到的就是归并排序。

由于内存有限,所以一次放入内存中的数量受到了限制。那么意味需要进行多趟的读写到内存,需要更多的IO次数。

而作者是采用一个位的表示方法。用一个10位长的字符串来表示一个所有元素小于10的简单的非负整数集合。如{ 1 ,2 ,3, 5 , 8}

0 1 1 1 0 1 0 0 1 0

从左到右,表示0,1,2,3,4,5,6,7,8,9。如果为1,说明在集合中,为0说明不在集合中。 这样本来需要多个字节表示的数,通过一个位就实现了,空间瞬间就剩下了几十倍有木有?

这样就可以使用107个位,做多就是1.19M左右。但是这么多位中其实有很多稀疏位可以进行压缩的。伪代码实现如下图2,:

三个阶段就是,1、初始化位数组,2、判断该值是否存在,,存在设置为1。3、根据位数组输出排序文件。

2、 小结:

给人一种耳目一新的感觉,的确是本好书,值得好好品味。后续比较蛤蟆会将编程珠玑中的每一章进行记录,根据需要删掉作者的一些“废话”,呈现最精简同时也是最核心的部分。


  本文关键词:编程珠玑,由笔耕文化传播整理发布。



本文编号:237323

资料下载
论文发表

本文链接:https://www.wllwen.com/wenshubaike/mishujinen/237323.html


Copyright(c)文论论文网All Rights Reserved | 网站地图 |

版权申明:资料由用户34e02***提供,本站仅收录摘要或目录,作者需要删除请E-mail邮箱bigeng88@qq.com