Loading

上一页 1 ··· 37 38 39 40 41 42 43 44 45 ··· 75 下一页
摘要: 思路 一开始想用左根右遍历的序列和右根左遍历的序列进行比较,如果相等则镜像对称。后来发现这种方式不对,比如样例[1, 2, 2, null, 2]就不是镜像对称的,但这种方法会返回true。 方法一:递归 1 /** 2 * Definition for a binary tree node. 3 阅读全文
posted @ 2020-10-27 11:18 拾月凄辰 阅读(76) 评论(0) 推荐(0) 编辑
摘要: 思路 方法:先序遍历,递归 1 class Solution { 2 public: 3 TreeNode* mirrorTree(TreeNode* root) { 4 if(root == NULL) { 5 return NULL; 6 } 7 8 TreeNode* tmp = mirror 阅读全文
posted @ 2020-10-25 11:23 拾月凄辰 阅读(77) 评论(0) 推荐(0) 编辑
摘要: 思路 方法一:如果B的先序序列是A的先序序列的子序列,并且B的中序序列也是A的中序序列的子序列,则B是A的子结构。这种方法比较暴力。 方法二:对A的每一个结点和B进行比较(这里可以使用先序遍历): 如果A->val == B->val,则A的左子树和右子树也要和B对应的左子树右子树相同。 如果A-> 阅读全文
posted @ 2020-10-25 09:56 拾月凄辰 阅读(88) 评论(0) 推荐(0) 编辑
摘要: 思路 解法一:双指针法 1 /** 2 * Definition for singly-linked list. 3 * struct ListNode { 4 * int val; 5 * ListNode *next; 6 * ListNode(int x) : val(x), next(NUL 阅读全文
posted @ 2020-10-24 11:10 拾月凄辰 阅读(171) 评论(0) 推荐(0) 编辑
摘要: 思路 方法一:常规解法 只检查每个字符后面的字符,需要判断的地方有: 1. 消去字符串的前置空格和后置空格,比如“1 ”是合法的 2. 正负号: (1) 只能出现在第1个字符,或者出现在e或E的后1个字符; (2) 正负号的后面一个字符必须是数字, 或者小数点 (3) 最多只有2个正负号 3. 指数 阅读全文
posted @ 2020-10-23 14:09 拾月凄辰 阅读(145) 评论(0) 推荐(0) 编辑
摘要: 思路 (1) 不考虑n很大的情况 1 class Solution { 2 public: 3 vector<int> printNumbers(int n) { 4 vector<int> res; 5 int m = 1; 6 for(int i = 0; i < n; ++i) 7 m = m 阅读全文
posted @ 2020-10-23 08:58 拾月凄辰 阅读(119) 评论(0) 推荐(0) 编辑
摘要: 思路 二分求幂模板题。注意边界-2147483647的处理。 二分求幂的算法见: https://www.cnblogs.com/FengZeng666/p/11484835.html 代码实现 1 class Solution { 2 public: 3 double myPow(double x 阅读全文
posted @ 2020-10-22 16:41 拾月凄辰 阅读(130) 评论(0) 推荐(0) 编辑
摘要: 思路 方法一:动态规划 从题目中可以看出,有最优子结构,可以联想到动态规划,其递归树如下: 可以看出,具有很多重叠子问题。 1 /*记忆化搜索代码*/ 2 class Solution { 3 private: 4 // 记忆化搜索,自顶向下 5 // memo[n]表示分割n获得的乘积最大值 6 阅读全文
posted @ 2020-10-22 15:29 拾月凄辰 阅读(105) 评论(0) 推荐(0) 编辑
摘要: 思路 将行坐标和列坐标数位之和大于 k 的格子看作障碍物,那么这道题就是一道很传统的搜索题目,这里使用dfs进行搜索。 这道题还有一个隐藏的优化:我们在搜索的过程中搜索方向可以缩减为向右和向下,而不必再向上和向左进行搜索。 根据题意可推知,任意一个格子都可以由其上方格子向下走过来,或者由其左方的格子 阅读全文
posted @ 2020-10-22 12:17 拾月凄辰 阅读(75) 评论(0) 推荐(0) 编辑
摘要: 思路 dfs +剪枝 代码实现 1 class Solution { 2 private: 3 int d[4][2] = {{0,1},{0,-1},{1,0},{-1,0}}; 4 int m, n; //n行m列 5 bool vis[210][210] = {false}; 6 7 publ 阅读全文
posted @ 2020-10-21 17:45 拾月凄辰 阅读(77) 评论(0) 推荐(0) 编辑
上一页 1 ··· 37 38 39 40 41 42 43 44 45 ··· 75 下一页