回溯算法

回溯法的基本步骤是什么?

https://www.nowcoder.com/questionTerminal/4b8b85b2f94a4558ada70829ccd60aa0

组合问题:1234

切割问题:字符串切割

子集问题:1234:{12}{23}{34}

排列问题:

棋盘问题:N皇后、解数独

一般用树抽象:

vector<vector<int>> 二维数组;
vector<int> path;
void Backtracking(参数:n,k,startindex){//n:个数 k:组合大小
	if(终止条件){
    	收集结果;
        return;
        }
	for(集合元素){
    处理节点;
    递归;
    回溯操作;
    }
}

回溯三部曲: 1.递归函数的参数和返回值 2.确定终止条件 3.单层递归逻辑

全部评论

相关推荐

不愿透露姓名的神秘牛友
07-03 17:37
点赞 评论 收藏
分享
fRank1e:吓得我不敢去外包了,但是目前也只有外包这一个实习,我还要继续去吗
点赞 评论 收藏
分享
水墨不写bug:疑似没有上过大学
点赞 评论 收藏
分享
不愿透露姓名的神秘牛友
07-02 18:35
简历上把1个月实习写成了3个月,会进行背调吗?
码农索隆:一个月有一个月的实习经历,三个月有三个月的实习经历
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务