leetcode
tfxismylove
这个作者很懒,什么都没留下…
展开
-
第二周每日一题
三数之和题目描述解题思路排序加双指针题目描述解题思路经典的青蛙跳台阶,动态规划。题目描述解题思路排序,单调。题目描述解题思路一次比较。题目描述给你一个包含 n 个整数的数组 nums,判断 nums 中是否存在三个元素 a,b,c ,使得 a + b + c = 0 ?请你找出所有满足条件且不重复的三元组。注意:答案中不可以包含重复的三元组。解题思路排序加双指针可以用判断和前一个是否相等来排除相等元素。public List<List<Integer>> threeSu原创 2020-06-20 18:45:10 · 270 阅读 · 0 评论 -
回文数
题目描述判断一个整数是否是回文数。回文数是指正序(从左向右)和倒序(从右向左)读都是一样的整数。进阶:你能不将整数转为字符串来解决这个问题吗?解题思路字符串判断字符串是否是回文串比较容易,可以采用两边判断是否相等相等再递归判断除两边后是否是回文串。下面是该思路代码。class Solution { public boolean isPalindrome(int x) { if(x < 0) return false;原创 2020-06-10 20:39:42 · 1248 阅读 · 0 评论 -
leetcode之动态规划类
面试题46. 把数字翻译成字符串题目描述解题思路递归dp题目描述给定一个数字,我们按照如下规则把它翻译为字符串:0 翻译成 “a” ,1 翻译成 “b”,……,11 翻译成 “l”,……,25 翻译成 “z”。一个数字可能有多个翻译。请编程实现一个函数,用来计算一个数字有多少种不同的翻译方法。解题思路递归首先看到题目的第一感觉本题可用递归求解,根据题目要求来进行判断首两位是否可以组合。可以组合则说明这两位有两种可能,反之只有一种可能。一开始我只想着从左往右进行递归判断。这当然没有问题的,但是问题就原创 2020-06-09 20:44:55 · 134 阅读 · 0 评论 -
leetcode之二叉树类
二叉树重建二叉树1递归解题思路代码1非递归(迭代)解题思路代码重建二叉树根据二叉树的前序遍历和中序遍历的结果,重建出该二叉树。假设输入的前序遍历和中序遍历的结果中都不含重复的数字。1递归解题思路根据先序遍历的规则根左右为了自己方便表示为:【根【左子树】【右子树】】。第一个节点肯定是根结点,首先创建根结点,然后可以根据根结点在中序遍历【【左子树】根【右子树】】中根的位置细分出左子树的长度然后采取递归求解。代码private Map<Integer, Integer> indexFor原创 2020-06-08 20:29:28 · 158 阅读 · 0 评论