Java 中的最大堆
javaobject oriented programmingprogramming更新于 2025/7/23 0:44:17
最大堆是一个完全二叉树,其中每一步的根节点的值都大于或等于子节点的值。
下面是使用库函数实现的最大堆。
示例
import java.util.*;
public class Demo{
public static void main(String args[]){
PriorityQueue<Integer> my_p_queue = new PriorityQueue<Integer>(Collections.reverseOrder());
my_p_queue.add(43);
my_p_queue.add(56);
my_p_queue.add(99);
System.out.println("优先级队列中的元素为:");
Iterator my_iter = my_p_queue.iterator();
while (my_iter.hasNext())
System.out.println(my_iter.next());
my_p_queue.poll();
System.out.println("使用poll函数移除一个元素后,队列元素为:");
Iterator<Integer> my_iter_2 = my_p_queue.iterator();
while (my_iter_2.hasNext())
System.out.println(my_iter_2.next());
Object[] my_arr = my_p_queue.toArray();
System.out.println("最大堆的数组表示:");
for (int i = 0; i < my_arr.length; i++)
System.out.println("Value: " + my_arr[i].toString());
}
}
输出
优先级队列中的元素为: 99 43 56 使用poll函数删除元素后,队列元素为: 56 43 最大堆的数组表示: 值:56 值:43
名为Demo的类包含主函数。在主函数中,定义了一个优先级队列实例,并使用‘add’函数将元素添加到其中。定义了一个迭代器,它
用于迭代优先级队列中的元素。 ‘poll’ 函数用于从列表中删除一个元素。接下来,元素将被迭代并显示在屏幕上。
相关文章
有用资源
java 参考教程 - 该教程包含有关 java 的更多信息:https://www.cainiaomax.com/java/

