12 2011 档案

m 分查找
摘要:一个比较产生两个决策结果二-决策的计算机硬件实现更高效我们可以想象给一个 array, 一个 key, 在某台 god machine 上有一个操作:cmp-multi array, key, n, m它能在一个时钟周期内决策出 key 是落在 n-elem array 的 m 等分(最后一分要小点)的哪一份,那在这种情况下 m 分查找就比 2 分查找要快。实际上,B-Tree 的搜索可以看成是这样的一个 m 分搜索。 阅读全文

posted @ 2011-12-26 16:15 能发波 阅读(88) 评论(0) 推荐(0)

Name lookup take place before access control
摘要:class A { void f(int);public: void f(long); void f(double);};void g() { A().f(1L); // OK A().f(1.); // OK A().f(10); // error}Yes, "1." is a floating point number. 阅读全文

posted @ 2011-12-24 18:03 能发波 阅读(96) 评论(0) 推荐(0)

hash_strmap & gold_hash_map update
摘要:hash_strmap在不增加任何额外成本的情况下,string pool 中每个 string 消耗的内存,平均情况下,减少了一个字节。太不值一提。gold_hash_map计划新加功能: 使用 FreeList 管理已删除的元素,这样最大的好处是:即使有元素删除,所有未被删除的元素的 id(数组下标)都不会改变。这样,就可以把 id(数组下标)作为元素的永久标识,可以把这个 id 保存在别的地方,来直接访问 gold_hash_map 的元素。这个功能看上去比较简单,但接口设计和实现都还是有不少复杂度的。 hash_strmap 也可以实现这个功能,但是这样会在 string pool 中 阅读全文

posted @ 2011-12-03 10:14 能发波 阅读(136) 评论(0) 推荐(0)

导航