Stacks and queues are abstract data types that have their own sense of order, that is, LIFO (Last In First Out) for stacks and FIFO (First In First Out) for queues. Thus, it makes no sense to accept a queue / stack and reorder their elements.
Wikipedia links
On stack vs vector
, Java java.util.Stack extends java.util.Vector, a Vector, , a Stack. ; , Stack extends Vector . .
Collections.sort java.util.Stack
, , , quicksort , CAN Collections.sort java.util.Stack. ? ( !), java.util.Stack - java.util.Vector, implements java.util.List, , , List. :
Stack<Integer> stack = new Stack<Integer>();
stack.push(1);
stack.push(3);
stack.push(5);
stack.push(2);
stack.push(4);
Collections.sort(stack);
System.out.println(stack);
while (!stack.isEmpty()) {
System.out.println(stack.pop());
}
, : - java.util.Stack. Vector. ; ; .
, , TreeSet . Set, .
NavigableSet<Integer> nums = new TreeSet<Integer>();
nums.add(5);
nums.add(3);
nums.add(1);
nums.add(2);
nums.add(6);
System.out.println(nums.pollFirst());
System.out.println(nums.pollFirst());
nums.add(4);
System.out.println(nums.pollFirst());
System.out.println(nums.pollFirst());