Digital Root 的黑魔法

Digital Root 或者 Digital Sum 是针对非负 int 类型的操作,给定一个 num:

Continue Reading »

一想到人类其实也被多巴胺奴役着,搞一个 super AI 管理社会,感觉也差不多?

理解 Lifecycle

说来惭愧,2021 年了才开始细看 Jetpack 的 Lifecycle,只因为之前项目里用 RxJava 实现的 Lifecycle 实在是太香了。

Continue Reading »

谈谈 Variance

Variance 是一个计算机科学中的术语,简单来说,如果 A 和 B 两个类型有某种关系,比如 A 是 B 的子类型,那么 Type<A>Type<B> 之间的关系是什么?

Continue Reading »

记录 Kotlin 一处 Bug

简单记录一个 Kotlin 的 bug,调试的时候怀疑人生了。

Continue Reading »

Android Architecture Component - App Startup

App Startup 是 Jetpack 提供的一个用于 App 启动时进行 component 初始化的机制,那么先来看看我们之前一般都是如何实现初始化的。

Continue Reading »

博耶·摩尔多数投票算法

O(n) 时间、O(1) 空间,查找输入数据的众数。

LeetCode #169. Majority Element

LeetCode #229. Majority Element II

Continue Reading »

LeetCode #837 New 21 Game

LeetCode #837 New 21 Game

简单来说,就是在 [1, W] 的范围内抽牌,抽到的牌即为点数,记到自己的分数里,分数大于等于 K 时,抽牌结束。 求当抽牌结束时,分数小于等于 N 的概率。

Continue Reading »

如何从 Stream 的角度思考 RxJava

这篇文章是对 RxJava 工程使用方面的一些总结和思考,不会涉及具体操作符解释、实现细节,更多是从 idea 出发来思考 Stream。当然因为思想是相同的,对于 RxPython 及其它语言的使用,几乎没有差别。

Continue Reading »

对于程序员和开发人员来说,如果完成某项任务所需要付出的努力对他们是个挑战,却又恰好还在力所能及的范围内,他们就会觉得很有乐趣。因此,趣味性是一个峰值效率的标志。

……

乐趣是一个符号,意味着效能、效率和高产。

——「UNIX 编程艺术」