首页 > 代码库 > 算法导论 10.1-6

算法导论 10.1-6

题目:用两个栈实现一个队列,并分析相关队列操作的运行时间

解答:

1、使用两个栈S1与S2;

2、通过栈S1的Push执行队列入队操作,通过栈S2的Pop执行队列出队操作

3、当栈S2为空后,即S1->Top = S2->Top,转换;栈S2的Push执行入队操作,栈S1的Pop执行出队操作

操作时间复杂度:O(1)

算法导论 10.1-6