标签: java stack heap priority-queue
我对堆栈有疑问。通常,我会以最简单的方式定义推送方法,如
Int size; public void push(int value){ elements[size++] = value;}
如果我想按递增顺序推送整数并按递减顺序调用pop方法,我怎么能在同一个push方法中定义这个方法?
答案 0 :(得分:1)
您在堆栈中没有排序设施 更好的方法是,在推送进入堆栈之前,按升序对数据进行排序。在从堆栈中弹出数据时,您将按降序获取数据。
答案 1 :(得分:0)
它不会保持堆栈尝试{{3p>
并获取第一个元素并在pop中删除它。
答案 2 :(得分:0)
使用已排序的集合来存储数据而不是普通数组。您可以找到有关创建排序列表here的建议。
答案 3 :(得分:-1)
堆栈通常是LIFO数据结构。如果您正在寻找一些有序的收藏品,请查看SortedSet。