求解子序列

简介: 求解子序列

Subsequence

问题

求一个字符串的子序列

思路

对于每个字符都有 选择 和 不选择 ,根据这两个方向进行递归

实现

void GetSubsequence(string str,int k)
{
    if (k == str.size())
    {
        cout << str << endl;
        return;
    }
    func(str, k + 1);/******选择第k个字符******/
    char tmp = str[k];
    str[k] = 0;
    func(str, k + 1);/******不选择第k个字符******/
    str[k] = tmp;
}

总结

提前保存第k个字符,保证不破坏原始字符串,同样也是保证其他递归路线正常执行。

也可以使用STL容器保存字符选择的结果,思路都是一样的。

目录
相关文章
|
物联网 开发工具 开发者
NRF52832官方SDK介绍
SDK(Software Development Kit)是指软件开发包,一般是由官方提供,主要用来介绍开发流程,提供常用的例程代码等等。可以降低开发者使用的门槛,提高开发效率,所以在开发者在进行具体的开发前必须先熟悉官方的SDK,一般可以在对应的官网获取(有些网站是开放的,可以直接下载,有些网站需要申请)。
680 0
|
算法
基于短时幅度谱估计方法的数字语音信号增强matlab仿真
基于短时幅度谱估计方法的数字语音信号增强matlab仿真
179 0
基于短时幅度谱估计方法的数字语音信号增强matlab仿真
|
C#
C#——输入名字随机显示上辈子是什么人
C#——输入名字随机显示上辈子是什么人
193 0
剑指offer 75. 把字符串转换成整数
剑指offer 75. 把字符串转换成整数
138 0
|
Java
java学习第四天笔记-循环高级和数组-分支结构84-无限循环
java学习第四天笔记-循环高级和数组-分支结构84-无限循环
72 0
java学习第四天笔记-循环高级和数组-分支结构84-无限循环
|
机器学习/深度学习 数据挖掘 异构计算
cs224w(图机器学习)2021冬季课程学习笔记10 Applications of Graph Neural Networks
cs224w(图机器学习)2021冬季课程学习笔记10 Applications of Graph Neural Networks
cs224w(图机器学习)2021冬季课程学习笔记10 Applications of Graph Neural Networks
|
Python
python编程-13:面向对象的特点
python编程-13:面向对象的特点
119 0
|
前端开发
点击电脑图标,显示电脑界面。点击相同的二维码图标,显示二维码界面(七)
有时候,在一个地方,放置不同的图标,可以随时切换图标。在切换图标的时候,实际上会相应切换底下的不同的界面。
221 0
点击电脑图标,显示电脑界面。点击相同的二维码图标,显示二维码界面(七)