
编程珠玑
scgillian
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
编程珠玑第9章二分搜索(有重复数字)中查找某数出现的第一个位置
binary search:search the first occurence of a number 查找的数中有重复的数只需在原始的二分搜索基础上进行修改,当中间的数A[mid]与target值相同时,target值的第一次出现要么是在mid处,要么是在mid左边。若low与mid(low==mid)的闭区间只包含一个数,则返回值为mid,若low具体实现如下#inc原创 2013-08-21 09:49:10 · 1785 阅读 · 0 评论 -
编程珠玑 column 10
主要介绍的稀疏矩阵的存储方式。没必要存储矩阵的每个点。只需存储不为0的值的点。使用一个数组来代表所有的列,一个链式表来代表给定列中的不为0的元素该链式表可以定义成struct Node p{int pointnum;int row;Node *next}原创 2013-08-23 20:56:57 · 616 阅读 · 0 评论 -
编程珠玑column12
12.2列举了从[0,5)中选2个数的情形,0被选中的概率是2/5通常情况下,从r个数中选择s个数,某一个数(确切说是选择第1个数时)被选中的概率是s/r可以这样思考:从r个数中任选一个数该数被选中的概率是1/r,但这是选择s个数,就相当于s次机会,相当于s/r,这样思考不严谨。参考了http://blog.csdn.net/songzitea/article/detail原创 2013-08-26 11:12:12 · 628 阅读 · 0 评论 -
编程珠玑column14 heaps
堆的siftdown操作假设x[1..n]的序列已经是一个堆,现在修改x[1]的值,然后调整这个序列使维持堆的性质初始化所以i为1,直到i没有子节点或者子节点的值均大于i所在的节点的值为止。把c设置成节点i的子节点中值较小的节点索引c=2*iif(c+1if(x[c+1]c++原创 2013-08-27 13:48:19 · 1022 阅读 · 0 评论