本文主要是介绍汉诺塔问题-递归,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
面试题 08.06. 汉诺塔问题 - 力扣(LeetCode)
递归问题,一定相信调用的这个函数传参进去能解决好问题,就是不用展开具体的递归图;
class Solution {
public:void hanota(vector<int>& A, vector<int>& B, vector<int>& C) {dfs(A, B, C, A.size());return;}void dfs(vector<int>& A, vector<int>& B, vector<int>& C,int n){if(n == 1){C.push_back(A.back());A.pop_back();return;}dfs(A, C, B, n-1);C.push_back(A.back());A.pop_back();dfs(B, A, C, n -1); }
};
这篇关于汉诺塔问题-递归的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!