A.B. C. D ②讨论: 输出 输入 假定输入元素A,B,C,D 到栈中,能得当哪几种输出? 不能得到哪几种输出序列? (1)A,B,C,D(7)B,A,C,D(13)C,A,B,D(19)D,B,C,A (2)A,B,D,C(8)B,A,D,C(14)C,A,D,B(20)D,B,A,C (3)A,C,B,D(9)B,C,A,D(15)C,B,A,D(21)D,C,B,A (4)A,C,D,B(10)B,C,D,A(16)C,B,D,A(22)D,C,A,B (5)A,D,B,C(11)B,D,A,C(17)C,D,A,B(23)D,A,B,C (6)A,D,C,B(12)B,D,C,A(18)C,D,B,A(24)D,A,C,B 5种 5种 3种 1种 共5+5+3+1=14种
讨论: 假定输入元素 A,B,C,D 到栈中,能得当哪几种输出? 不能得到哪几种输出序列? (1) A,B,C,D (7) B,A,C,D (13) C,A,B,D (19) D,B,C,A (2) A,B,D,C (8) B,A,D,C (14) C,A,D,B (20) D,B,A,C (3) A,C,B,D (9) B,C,A,D (15) C,B,A,D (21) D,C,B,A (4) A,C,D,B (10) B,C,D,A (16) C,B,D,A (22) D,C,A,B (5) A,D,B,C (11) B,D,A,C (17) C,D,A,B (23) D,A,B,C (6) A,D,C,B (12) B,D,C,A (18) C,D,B,A (24) D,A,C,B 共5+5+3+1=14种 A,B,C,D 输出 输入 5种 5种 3种 1种
3.1.2栈的存储表示和操作实现 1.顺序栈-—用顺序空间表示的栈。 假设栈空间为s[1.. maxing] (1)顶指针指向顶元素所在位置: 序号 序号 maxing 自 √由 maxleng/// //区 top→nan栈顶 自 栈顶指针 VY由 a2 2 1a1栈底 1 0 (a)非空栈,top>0 top 顶元素=s[top (b)空栈,top=0 若删除元素,将发生“下
3.1.2 栈的存储表示和操作实现 1.顺序栈----用顺序空间表示的栈。 假设栈空间为s[1..maxleng] (1)顶指针指向顶元素所在位置: top → 栈顶指针 栈顶 栈底 maxleng n 2 1 /// /// /// /// /// /// maxleng 2 1 0 自 由 区 自 由 区 (a) 非空栈,top>0 顶元素==s[top] (b) 空栈,top==0 若删除元素,将发生“下 溢” /// /// an ... a2 a1 序号 top → 序号