面试好题
sunbaofeng2
这个作者很懒,什么都没留下…
展开
-
双堆求中位数
求数组中位数的方法:1、排序2、双堆3、findk效率分别是nlog(n)、nlog(n)、log(n)用堆维护中位数的意思是说,设计两个堆,第一个堆存放小于中位数的元素,第二个堆存放大于中位数的元素。下面是双堆维护中位数的语言描述:1、初始化的时候设置两个变量分别记录两个堆【左堆和右堆】的元素的个数2、取第一个元素【d[0]】作为初转载 2014-03-31 22:14:04 · 762 阅读 · 0 评论 -
如何定义和实现一个类的成员函数为回调函数(转)
如果试图直接使用C++的成员函数作为回调函数将发生错误,甚至编译就不能通过。通过查询资料发现,其错误是普通的C++成员函数都隐含了一个传递函数作为参数,亦即“this”指针,C++通过传递this指针给其成员函数从而实现程序函数可以访问C++的数据成员。这也可以理解为什么C++类的多个实例可以共享成员函数却-有不同的数据成员。由于this指针的作用,使得将一个CALL-BACK型的成员函数作为回调转载 2014-04-03 20:42:47 · 747 阅读 · 0 评论