算法详解
文章平均质量分 90
宫水三叶的刷题日记
原创文章公众号: 「宫水三叶的刷题日记 」。每天十分钟,快乐学算法 ~
展开
-
【刷穿 LeetCode】9. 回文数(简单)
题目描述判断一个整数是否是回文数。回文数是指正序(从左向右)和倒序(从右向左)读都是一样的整数。示例 1:输入: 121 输出: true示例 2:输入: -121 输出: false解释: 从左向右读, 为 -121 。 从右向左读, 为 121- 。因此它不是一个回文数。示例 3:输入: 10 输出: false解释: 从右向左读, 为 01 。因此它不是一个回文数。进阶:你能不将整数转为字符串来解决这个问题吗?字符串解法既然进阶里提到了不能用字符串来解原创 2021-02-01 09:11:16 · 239 阅读 · 0 评论 -
【刷穿 LeetCode】7. 整数反转(简单)
题目描述给出一个 32 位的有符号整数,你需要将这个整数中每位上的数字进行反转。注意:假设我们的环境只能存储得下 32 位的有符号整数,则其数值范围为 [−231−2^{31}−231, 2312^{31}231 − 1]。请根据这个假设,如果反转后整数溢出那么就返回 0。示例 1输入:x = 12 输出:321示例 2:输入:x = -123 输出:-321示例 3:输入:x = 120 输出:21示例 4:输入:x = 0 输出:0提示:-2^31 <原创 2021-02-01 09:00:55 · 172 阅读 · 1 评论 -
面试官问我斐波拉契数列,我从暴力递归讲到动态规划 ...
前言在系统学习动态规划之前,一直搞不懂「动态规划」和「记忆化搜索」之间的区别。总觉得动态规划只是单纯的难在于对“状态”的抽象定义和“状态转移方程”的推导,并无具体的规律可循。本文将助你彻底搞懂动态规划。演变过程暴力递归 -> 记忆化搜索 -> 动态规划其实动态规划也就是这样演练过来的。可以说几乎所有的「动态规划」都可以通过「暴力递归」转换而来,前提是该问题是一个“无后效性”问题。无后效性所谓的“无后效性”是指:当某阶段的状态一旦确定,此后的决策过程和最终结果将不受此前的各原创 2021-02-01 15:48:21 · 682 阅读 · 1 评论