2011年5月2日

摘要: 1. 用作Priority Queue,这个很经典了。不说了。2. 把多个有序容器里面的元素合并到一个大的有序容器里面。假设有n个有序容器,我们希望把这些容器里面的元素有序地放到一个大容器里面去。我们姑且称n个有序容器为小容器。对每个小容器维护一个cursor,cursor刚开始指向小容器中的第一个元素,即最小的元素。每个循环中,对n个cursor指向的n个元素建立一个最小堆;从这个堆里面extract最小的元素加到大容器里面;被extract最小元素的那个小容器的cursor往后挪一位;进入下一个循环。如果一个容器的cursor到达end了,那么最小堆的大小减一。因为我们每次加入到大容器里面 阅读全文
posted @ 2011-05-02 04:12 chihits 阅读(977) 评论(0) 推荐(0) 编辑

导航