2014年(12)
发布时间:2014-07-13 11:15:54
Show how to implement a stack using two queues. Analyze the running time of the stack operations.We have two queues and mark one of them as active. PUSH queues an element on the active queue. POP should dequeue all but one element of the active queue and queue them on .........【阅读全文】
发布时间:2014-07-04 16:50:02
要求合并k个有序链表节点到一个链表之中。可以使用如下的方法进行合并:1. 分治算法2. 最小堆K路合并思路:1. 分治算法类似归并排序,我们对于合并两个有序链表是可以快速解决的,那么我们可以不断的对集合进行划分,直到集合中的链表条数为1或者2,如果是1直接返回就行,如果是2则合并后再返回。然后依次往上合并,最.........【阅读全文】
发布时间:2014-07-02 21:34:27
Q:说明如何使用优先级队列来实现一个先进先出队列,另说明如何用优先级队列来实现栈。A:队列的性质是先进先出,所以维护一个最小优先级队列,给先进队的元素赋一个小的优先级,每插入一个新的元素优先级加1。 出队时取优先级最小的元素并维护优先级队列即可。栈的实现同理。From http://hyhx2008.github.io/su.........【阅读全文】
发布时间:2014-07-02 10:50:16
目的:解释为何C++多态会崩溃要点:1. C++数组不支持多态2. C++数组元素析构顺序为逆序析构,不管是在堆上还是在栈上;示例代码:点击(此处)折叠或打开#include <iostream> using namespace std;class Base{p.........【阅读全文】