1 #include <iostream>
 2 #include <string>
 3 #include <vector>
 4 using namespace std;
 5
 6 //摘自程序员面试宝典
 7 //输入两个字符串,比如abdbcc和abc,输出第二个字符串在第一个字符串中的连接次序
 8 //即输出125,126,145,146
 9 template <class T>
10 void print(vector<T> v)
11 {
12         for (typename vector<T>::iterator it = v.begin(); it != v.end(); it++)
13         {
14                 cout<<*it<<" ";
15         }
16         cout<<endl;
17 }
18
19 void print(char str1[], char str2[], int index1, int index2, vector<int> &v)
20 {
21         if (str1==NULL || str2==NULL)
22         {
23                 return;
24         }
25         if (str1[index1]=='\0' || str2[index2]=='\0')
26         {
27                 if (!(str1[index1]=='\0' && str2[index2]!='\0') )
28                 {
29                         print(v);
30                 }
31                 return;
32         }
33         if (str1[index1]==str2[index2])
34         {
35                 v.push_back(index1);
36                 print(str1, str2, index1+1, index2+1, v);
37                 v.pop_back();
38         }
39         print(str1, str2, index1+1, index2, v);
40 }
41
42 int main()
43 {
44         char * str1 = "abdbcc";
45         char * str2 = "abcd";
46         int index1 = 0, index2 = 0;
47         vector<int> v;
48         print(str1, str2, index1, index2, v);
49         return 0;
50 }

转载于:https://www.cnblogs.com/wendelhuang/archive/2013/05/09/3068487.html

[笔试面试][code_by_hand]输出第二个字符串在第一个字符串中的连接次序相关推荐

  1. python字符串变量替换_python字符串替换第一个字符串的方法

    Python 截取字符串使用 变量[头下标:尾下标],就可以截取相应的字符串,其中下标是从0开始算起,可以是正数或负数,下标可以为空表示取到头或尾. # 例1:字符串截取 str = '1234567 ...

  2. python 字符串替换_python字符串替换第一个字符串的方法

    Python 截取字符串使用 变量[头下标:尾下标],就可以截取相应的字符串,其中下标是从0开始算起,可以是正数或负数,下标可以为空表示取到头或尾. # 例1:字符串截取 str = '1234567 ...

  3. 《程序员代码面试指南》第二章 链表问题 删除无序链表中值重复的链表

    样例 998 998 998 999 999 999 1000 1000 1000 删除后为998 999 1000 java代码 /*** @Description:删除无序链表中值重复的链表* @ ...

  4. 12种排序算法:原理、图解、动画视频演示、代码以及笔试面试题目中的应用

    0.前言 从这一部分开始直接切入我们计算机互联网笔试面试中的重头戏算法了,初始的想法是找一条主线,比如数据结构或者解题思路方法,将博主见过做过整理过的算法题逐个分析一遍(博主当年自己学算法就是用这种比 ...

  5. 前端笔试面试知识点总结(随缘复习,慢更)

    前端笔试面试知识点总结 1 HTTP/浏览器 1.1 HTTP 1.1.1 HTTP请求报文与响应报文 1.1.1.1 HTTP请求报文 1.1.1.2 HTTP响应报文 1.1.2 get与post ...

  6. VIVO 提前批 嵌入式 笔试 +面试 经验

    经验:一定要先把思路想对,再动手,把自己的思路用测试例程手动算一下,测试正确与否.有些公司的界面可以使用打印调试 错误做法:先动手,要是思路不对,再改,基本时间不够. 笔试:20190604 首先题目 ...

  7. 【程序员面试宝典】递归之两个字符串连接次序问题(P83)

    题目: 输入两个字符串,比如abdbcc和abc,输出第二个字符串在第一个字符串中的连接次序.即输出125.126.145.146. 解决方案: 此处仅考虑第一个字符串中的字符在第二个字符串中的相对位 ...

  8. sql中截取字符串函数_SQL Server 2017中的顶级SQL字符串函数

    sql中截取字符串函数 SQL Server 2017 has been in the talk for its many features that simplify a developer's l ...

  9. C语言:从键盘输入两个字符串,输出第一个字符串在第二个字符串中的位置

    从键盘输入两个字符串,输出第一个字符串的首字母在第二个字符串中的位置. 如"abc"在"bbbacccabcddaw3"的位置为7. 悬赏分:50 | 解决时间 ...

最新文章

  1. 北京交通大学计算机科学与技术研究生导师,熊轲_北京交通大学研究生导师信息...
  2. pLSA概率潜在语义分析
  3. 分布式服务下,消息中间件改造
  4. mt6765和骁龙665哪个好_小米11正式发布,首发骁龙888+白送快充头,售价3999起
  5. P4144 大河的序列
  6. Logistic 梯度法进行分类
  7. ECC椭圆曲线加密算法原理 | 比特币加密算法
  8. sprintf': This function or variable may be unsafe
  9. 第九篇 设计模式之装饰模式
  10. Pycharm导入MySQL驱动包误区
  11. GET和POST 区别
  12. 微软消息队列-MicroSoft Message Queue(MSMQ)队列的C#使用
  13. word中插入分割线
  14. 汇编语言学习笔记--位运算(应该貌似简单点了吧,差点自己就信了,(:{ ))
  15. pdf转换成jpg python_怎样利用python将pdf转换成jpg格式
  16. 洛谷-P1425-小鱼的游泳时间
  17. 【乐器常识】声音之美
  18. QPixmap的尺寸设置
  19. 宝塔linux面板时区不正确怎么修改
  20. Qt快捷键之大小写切换

热门文章

  1. MySQL之一致性检测及数据同步
  2. 网络安全法今日实施 互联网企业对隐私政策重视不足
  3. bootstrap框架中data-xxx 的属性
  4. 设计模式(十一)桥梁模式(结构型)
  5. HTML(格式,文本标签)
  6. Android中自定义View的研究 -- 在XML中引用自定义View
  7. android面试题总结加强
  8. 统计所有子串写到文件
  9. linux的同步与互斥
  10. linux下gzip