LeetCode 647. 回文子串

这是 2020 年 8 月 19 日的每日一题。这道题我是用 动态规划 解出来的。但是这题的 动态规划 效果反而不如暴力优化。可以说这道题让我明白了 动态规划 不能滥用。特此记录一下。647. 回文子串难度:中等题目给定一个字符串,你的任务是计算这个字符串中有多少个回文子串。具有不同开始位置或结束位置的子串,即使是由相同的字符组成,也会被视作不同的子串。示例 1输入:"abc"

- 阅读全文 -

LeetCode 546. 移除盒子

这是 2020 年 8 月 15 日的每日一题。这道题我没写出来,是看题解的,这道题如果用常规的动态规划思路,很容易进入误区。特此记录一下。主要学到了以下两点:动态规划的 dp 函数可以是多元的,当二元无法表达状态转移的时候,尝试加多一维,具体第三维可以表示什么,这道题给出了一种思路。当动态规划的状态转移方向难以确定的时候,可以使用 递归 + 记忆化 的形式。虽然比迭代要占用更多的空间复杂度,但是

- 阅读全文 -

Android MVP 架构的一种实现模型 - 带 Demo

最近项目有 MVP 架构的需求。于是简单写了 MVP 的一种实现模板。开始吧。MVPmvp 架构是一种设计模式,他没有所谓的标准。只是一种思维上的架构。所以本文介绍的只是其中一种实现模板。MVP 全称 Model - View - Presenter,就是把代码分成了三层。具体可以参考下图:然后来分别讲一下吧我对这三个逻辑层的理解吧。ModelModel 层一般都是全局单例的。用于数据的获取。主要

- 阅读全文 -

LeeCode 227. 回文串

这是 2020 年 8 月 6 日 的每日一题。因为昨天断网了,今天补更新。这道题主要是涉及到一种新的数据结构 - 字典树。之后可能会写博客记录一下。现在先看题吧。336. 回文对难度:困难题目给定一组 互不相同 的单词, 找出所有不同 的索引对(i, j),使得列表中的两个单词, words[i] + words[j] ,可拼接成回文串。示例 1输入:["abcd",&quo

- 阅读全文 -

LeetCode 207. 课程表

这是 2020 年 8 月 4 日的每日一题。拓扑排序的典型例题。在之前矩阵最长递增路径的题中最后就有预感,现在它来了。207. 课程表难度:中等题目你这个学期必须选修 numCourse 门课程,记为 0 到 numCourse-1 。在选修某些课程之前需要一些先修课程。 例如,想要学习课程 0 ,你需要先完成课程 1 ,我们用一个匹配来表示他们:[0,1]给定课程总量以及它们的先决条件,请你判

- 阅读全文 -