84669 Lernen von Personen
152542 Lernen von Personen
20005 Lernen von Personen
5487 Lernen von Personen
7821 Lernen von Personen
359900 Lernen von Personen
3350 Lernen von Personen
180660 Lernen von Personen
48569 Lernen von Personen
18603 Lernen von Personen
40936 Lernen von Personen
1549 Lernen von Personen
1183 Lernen von Personen
32909 Lernen von Personen
优先级队列中的decrease-key是什么意思,表示的是什么操作?
decrease-key
光阴似箭催人老,日月如移越少年。
如果你问的是STL中的priority_queue的话,我想到c++11为止是没有提供decrease-key的方法的。我在做prim算法的时候也遇到过这个问题,如果去查看libc++中priority_queue的源码,你就会发现它只不过是一个适配器,是在vector上使用make_heap生成的。但是你可以依照同样的方法也在vector上建堆得到你想要的容器。另外你还可以使用set中的红黑树,它有和priority_queue一样的时间复杂度,只是常数值更大一些而已。
如果你问的是STL中的priority_queue的话,我想到c++11为止是没有提供decrease-key的方法的。
我在做prim算法的时候也遇到过这个问题,如果去查看libc++中priority_queue的源码,你就会发现它只不过是一个适配器,是在vector上使用make_heap生成的。但是你可以依照同样的方法也在vector上建堆得到你想要的容器。另外你还可以使用set中的红黑树,它有和priority_queue一样的时间复杂度,只是常数值更大一些而已。