add feature: queue heapsort red-black tree