A-A+

设有一个长度为n的由“0”和“1”元素组成的输入序列 存于数组A[n]中。设计一个算法 依次

2022-08-12 15:46:43 问答库 阅读 196 次

问题详情

设有一个长度为n的由“0”和“1”元素组成的输入序列,存于数组A[n]中。设计一个算法,依次让每个元素通过一个栈s(容量≥n)而得到一个输出序列,使得输出序列中“0”元素都出现在“1”元素之前。输出序列存人数组B[n]中。


请帮忙给出正确答案和分析,谢谢!

参考答案

正确答案:void sorder(int A[]int B[]){ int iJ=0;stack S;for(i=0;i<n;i++){ push(A[i]s);if(A[i]==0){ pop(SB[J]);J++;}}while(!empty(S)){ pop(sB[J]);j++;}}
此问题考查的知识点是栈的操作问题。通过对栈顶元素的判断,决定是否出栈。

考点:数组,序列