leetcode中的递归调用总结
来源:互联网 发布:kali源码安装ss 编辑:程序博客网 时间:2024/06/16 23:32
只是总结我在刷leetcode过程中遇到的使用递归来解决的问题
437. Path Sum III
You are given a binary tree in which each node contains an integer value.
Find the number of paths that sum to a given value.
The path does not need to start or end at the root or a leaf, but it must go downwards (traveling only from parent nodes to child nodes).
The tree has no more than 1,000 nodes and the values are in the range -1,000,000 to 1,000,000
root = [10,5,-3,3,2,null,11,3,-2,null,1], sum = 8 10 / \ 5 -3 / \ \ 3 2 11 / \ \3 -2 1Return 3. The paths that sum to 8 are:1. 5 -> 32. 5 -> 2 -> 13. -3 -> 11
代码:
class Solution {public: int pathSum(TreeNode* root, int sum) { if(!root) return 0; return sumUp(root, 0, sum) + pathSum(root->left, sum) + pathSum(root->right, sum); }private: int sumUp(TreeNode* root, int pre, int& sum){ if(!root) return 0; int current = pre + root->val; return (current == sum) + sumUp(root->left, current, sum) + sumUp(root->right, current, sum); }};
78. Subsets
Given a set of distinct integers, nums, return all possible subsets.
Note: The solution set must not contain duplicate subsets.
For example,
If nums = [1,2,3]
, a solution is:
[ [3], [1], [2], [1,2,3], [1,3], [2,3], [1,2], []]
class Solution {public: vector<vector<int>> subsets(vector<int>& nums) { sort(nums.begin(), nums.end()); vector<vector<int>> subs; vector<int> sub; genSubsets(nums, 0, sub, subs); return subs; } void genSubsets(vector<int>& nums, int start, vector<int>& sub, vector<vector<int>>& subs) { subs.push_back(sub); for (int i = start; i < nums.size(); i++) { sub.push_back(nums[i]); genSubsets(nums, i + 1, sub, subs); sub.pop_back(); } }};
阅读全文
0 0
- leetcode中的递归调用总结
- 递归调用总结
- 现实中的递归调用!!!
- java中的递归调用
- java中的递归调用
- Oracle中的递归总结
- PHP中的函数递归调用
- java中的递归调用算法
- 解释循环中的递归调用
- leetcode中的二分法总结
- 递归调用 (看视频总结)
- java基础,递归调用的初学总结
- leetcode -- 解题总结--DP与DFS, 递归
- LeetCode总结,递归的理解与设计
- leetcode 求最大深度 之 递归 总结
- 递归调用删除项目中的svn文件夹
- 【C语言】c语言中的递归调用
- JavaScript 中的递归和尾调用
- Fresco加载图片的几种方式
- JSP基础——JSP的7个动作指令
- eclipse 设置默认编码为utf-8
- 基于Dragonboard 410c的自动感应调色灯软件编码实现
- μC/OS-II学习之:任务,信号量、邮箱、队列及其区别
- leetcode中的递归调用总结
- CGI FastCGI PHP-CGI与PHP-FPM概念介绍
- java 资料网站
- lua 斐波那契数列
- Androidstudio中的控件颜色分别使用
- iOS运行时获取对象的成员变量和成员方法
- PHP精选数组函数
- 腾讯云 linux centOS7下LAMP环境搭建 php
- PHP中有关正则表达式的函数集锦