题解 | #二叉树遍历#

二叉树遍历

https://www.nowcoder.com/practice/6e732a9632bc4d12b442469aed7fe9ce

#include<iostream>
#include<stack>
using namespace std;
void out(string s1,string s2,int low1,int high1,int low2,int high2,stack<char> &s){
	if(low1 > high1 || low2 > high2)return;
	char head = s1.at(low1);
	int p = low2;
	while(s2.at(p)!=head)p++;
	s.push(head);
	int length1 = p-low2;//1 2 3 4(p) 5 6 7
						 //4(p) 2 3 1 5 7 6
	int length2 = high2-p;
	out(s1,s2,low1+1,low1+length1,p-length1,p-1,s);
	out(s1,s2,low1+length1+1,high1,p+1,high2,s);
	cout<<head;
	s.pop();	
}
int main(){
	string s1 = "";
	string s2 = "";
	while(cin>>s1){
		if(cin.eof())break;
		cin>>s2;
		stack <char>s;

	out(s1,s2,0,s1.length()-1,0,s2.length()-1,s);
	cout<<endl;
	
	}
	return 0;
}

全部评论

相关推荐

沉淀一会:1.同学你面试评价不错,概率很大,请耐心等待; 2.你的排名比较靠前,不要担心,耐心等待; 3.问题不大,正在审批,不要着急签其他公司,等等我们! 4.预计9月中下旬,安心过节; 5.下周会有结果,请耐心等待下; 6.可能国庆节前后,一有结果我马上通知你; 7.预计10月中旬,再坚持一下; 8.正在走流程,就这两天了; 9.同学,结果我也不知道,你如果查到了也告诉我一声; 10.同学你出线不明朗,建议签其他公司保底! 11.同学你找了哪些公司,我也在找工作。
点赞 评论 收藏
分享
jack_miller:我给我们导员说我不在这里转正,可能没三方签了。导员说没事学校催的时候帮我想办法应付一下
点赞 评论 收藏
分享
评论
点赞
收藏
分享
牛客网
牛客企业服务