题目:用两个栈实现一个队列,并分析相关队列操作的运行时间
解答:
1、使用两个栈S1与S2;
2、通过栈S1的Push执行队列入队操作,通过栈S2的Pop执行队列出队操作
3、当栈S2为空后,即S1->Top = S2->Top,转换;栈S2的Push执行入队操作,栈S1的Pop执行出队操作
操作时间复杂度:O(1)
题目:用两个栈实现一个队列,并分析相关队列操作的运行时间
解答:
1、使用两个栈S1与S2;
2、通过栈S1的Push执行队列入队操作,通过栈S2的Pop执行队列出队操作
3、当栈S2为空后,即S1->Top = S2->Top,转换;栈S2的Push执行入队操作,栈S1的Pop执行出队操作
操作时间复杂度:O(1)