1.翻译参考

http://liucw.blog.51cto.com/6751239/1198026

2.代码参考

http://www.cnblogs.com/devymex/archive/2010/08/04/1792276.html

回溯的方法:先走完二叉树的一路,然后恢复现场,走另一路。

注意出口位置,和条件判断。

STL:vector

(1)http://zh.wikipedia.org/wiki/Vector_(STL)

(2)https://software.intel.com/zh-cn/blogs/2011/08/10/c-vector

反向迭代器rbegin,rend

//反向输入
vector<char> Src(str1.rbegin(), str1.rend());

http://blog.csdn.net/kjing/article/details/6936325

1.顺序?2.结果错误

#include<iostream>
#include<string>
#include<vector> using namespace std; void GenAnagram(vector<char> &Src, vector<char> &Dest,vector<char> &Order, vector<char> &Stack)
{
if(!Src.empty())
{
Order.push_back('i');
Stack.push_back(Src.back());
Src.pop_back();
GenAnagram(Src, Dest, Order, Stack);
Src.push_back(Stack.back());
Stack.pop_back();
Order.pop_back();
}
if(!Stack.empty()&&Stack.back()==Dest[Stack.size() + Src.size() - ])
{
Order.push_back('o');
char cTemp =Stack.back();
Stack.pop_back();
GenAnagram(Src, Dest, Order, Stack);
Stack.push_back(cTemp);
Order.pop_back();
}
   //参考代码这块写错了
if (Src.empty() && Stack.empty()) { vector<char>::iterator i = Order.begin();
for (; i != Order.end(); ++i ) {
cout << *i << ' ';
}
 cout << endl;
}
} int main()
{
for(string str1,str2;cin>>str1>>str2;cout<<']'<<endl)
{
cout<<'['<<endl;
//反向输入
vector<char> Src(str1.rbegin(), str1.rend());
vector<char> Dest(str2.rbegin(), str2.rend());
vector<char> Order, Stack;
GenAnagram(Src, Dest, Order, Stack);
}
return ;
}

最新文章

  1. CDCE913产生任意频率
  2. DevExpress.XtraEditors.xtraScrollableControl
  3. iOS关于NSUserDefaults存,写, 删的问题
  4. 5. Singleton(单例)
  5. List对象去重
  6. UTF-8 &#39;s format
  7. iOS10权限声明国际化
  8. netbeans中给jpanl添加背景图片制定代码的理解——匿名内部类继承父类
  9. GameOver
  10. 利用SSIS发送邮件
  11. PHP迭代
  12. PO &gt; Create PO时关于汇率问题需要注意的步骤
  13. Windows查看端口被哪个进程占用
  14. 【转载】Linux cgroup资源隔离各个击破之 - cpu隔离1
  15. Java集合、Iterator迭代器和增强for循环整理
  16. windows 下面必备软件
  17. netty为啥要二次开发
  18. Codeforces Beta Round #61 (Div. 2)
  19. sql 索引 sql_safe_updates
  20. Linux中编写Bash脚本的10个技巧

热门文章

  1. 题解 [CF525D] Arthur and Walls
  2. hdfs基本使用
  3. [人物存档]【AI少女】【捏脸数据】洛莉
  4. Sysinternals
  5. (六)绘图,文本编程,定时器,菜单,图标icon,消息类型
  6. 关于tensorflow里面的tf.contrib.rnn.BasicLSTMCell 中num_units参数问题
  7. MySQL 5.7半同步复制技术
  8. 下载eclipse 配置eclipse 新建Java项目 写一个小程序 运行
  9. Manacher 算法学习小记
  10. JVM GC之垃圾收集器