程序员面试宝典之输入两个字符串,比如abdbcc和abc,输出第二个字符串在第一个字符串中的连接次序,即输出125,126,145,146
2013-02-16 15:44
676 查看
//============================================================================ // Name : 2例一.cpp // Author : // Version : // Copyright : Your copyright notice // Description : Hello World in C++, Ansi-style //============================================================================ #include <iostream> #include<string.h> #include<list> using namespace std; list<int>list1; void findLink(const char*p1,const char*p2,int i,int j) { if(!p1[i]||!p2[j]) return ; if(p2[j]==p1[i]&&!p2[j+1]) { for(list<int>::iterator it=list1.begin();it!=list1.end();it++) { cout<<*it<<" "; } cout<<i+1<<endl; } if(p1[i]==p2[j]) { list1.push_back(i+1); findLink(p1,p2,i+1,j+1); list1.pop_back(); } findLink(p1,p2,i+1,j); } int main() { char p[10]="abdbccd"; char q[10]="abc"; findLink(p,q,0,0); return 0; }
相关文章推荐
- 《程序员面试宝典》:输入两个字符串,比如abdbcc和abc,输出第二个字符串在第一个字符串中的连接次序,即输出125,126,145,146
- 程序员面试宝典 8.2 典型递归问题: 面试例题1: 输入两个字符串,比如 abdbcc 和 abc, 输出第二个字符串在第一个字符串中的连接次序。即输出 125, 126, 145, 146.
- 输入两个字符串,比如abdbcc和abc,输出第二个字符串在第一个字符串中的连接次序(递归方法)
- 输入两个字符串,比如abdbcc和abc,输出第二个字符串在第一个字符串中的连接次序
- 输入两个字符串,比如abdbcc和abc,输出第二个字符串在第一个字符串中的连接次序(递归方法)
- 输入两个字符串,比如abdbcc和abc,输出第二个字符串在第一个字符串中的连接次序(递归方法)
- 输入两个字符串,比如abdcc和abc,输出第二个字符串在第一个字符串中的连接次序
- 输入两个字符串,比如abdbcc和abc,把abc在abdbcc中的连接次序输出
- 输入两个字符串,输出第二个字符串在第一个字符串中的连接次序
- C语言:从键盘输入两个字符串,输出第一个字符串在第二个字符串中的位置
- 《程序员面试宝典》求取第二个字符串在第一个字符串中的连接次序---递归算法
- 输出第二个字符串在第一个字符串中的连接次序
- java--封装一类Java对象,用户从输入对话框输入两个日期,程序将判断两个日期的大小关系(比如输出:您输入的第二个日期大于第一个日期)以及两个日期之间的间隔天数(比如输出:2006年6月6日和
- 字符串问题:输出第二个字符串在第一个字符串中的连接次序
- js 输入两个字符串,从第一个字符串中删除第二个字符串中的所有字符串
- 剑指offer相关题目,输入两个字符串,从第一个字符串中删除在第二个字符串中出现的所有字符
- 输入一行字符串,找出出现的相同且长度最长的字符串,输出它及其首字母的置比如:“yyabcdagaerabceg”答案应该是abc
- 按要求分解字符串,输入两个数M,N;M代表输入的M串字符串,N代表输出的每串字符串的位数,不够补0。例如:输入2,8, “abc” ,“123456789”,则输出为“abc00000”,“12345
- 按要求分解字符串,输入两个数M,N;M代表输入的M串字符串,N代表输出的每串字符串的位数,不够补0。例如:输入2,8, “abc” ,“123456789”,则输出为“abc00000”,“12345
- 输出第二个字符串在第一个字符串中的次序