C容器适配栈、deque、queue和优先级队列的实现原理如何详细阐述?