ARST打卡第193周[193/521]

Algorithm

lc2293_极大极小游戏

就是简单模拟递归

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
func minMaxF(isMin bool, a, b int) int {
if isMin {
if a < b {
return a
}
return b
} else {
if a > b {
return a
}
return b
}
}

// 简单模拟
func minMaxGame(nums []int) int {
sz := len(nums)
if sz == 1 {
return nums[0]
}
minFlag := true
newNums := nums[:sz/2]
for i := 0; i < sz; i += 2 {
// minFlag 可以优化成 (i/2) & 1 来判断奇偶
newNums[i/2] = minMaxF(minFlag, nums[i], nums[i+1])
if minFlag {
minFlag = false
} else {
minFlag = true
}
}
return minMaxGame(newNums)
}

Review

【TED演讲】要克服挑战,就别再与他人比较

之前看过一次,但重温仍有感想

演讲者因为一次意外失去了双腿知觉,然后因此丧失了斗志一段时间,很难去抵制自己的不自觉的和过去的自己进行对比。

之后作者发现需要忘记过去,然后用忘记过去或者刚刚发生的一些糟糕的事情,专注于当下怎么改善修复增强

于是作者忘记自己过去的能力,开始为失去双腿的自己创造自己的能力平均值,不断一次次突破自己的平均值

作者研究轮椅竞速,不断专注于自己的当下的实力,然后专注得改善自己的当下实力

每次马拉松都去挑战自己以前的平均值,然后最终的成就看起来还不错

所以,忘掉过去的糟糕事情,忘掉和他人的平均值对比,这些只会阻碍你的行动

专注于自己当下的能力,然后去改善,成为更好的自己就是最美的自己

Tips-HTAP发展简介

HTAP (Hybrid Transactional and Analytical Processing-混合事务分析处理) 在线事务与在线分析处理

Share-研究数据库内核前景

DB 一共就三层:存储、计算、网络
每一层单独出来都是一个领域,存储和网络这里不是特别的难,但是对工程积累要求很高,计算才是大头,如果用SQL那么必然跑不了编译器了,引入LLVM,然后还有各种算法的加速,基本是无底洞。
简单来说就是门槛非常高,很多DB Kernel 工程师最开始都是Infra的其他方向,可能最开始就是个造RPC的或者搓Redis协议的缓存巴拉巴拉的。
最重要的是:这个玩意做好四五年很难升职加薪的准备,大后期,简单来说就是这个果实的收获可能在你最需要钱的时间节点之后,所以基本都不会投入到这个事情上来,大部分infra的工程师可能搞着搞着就搞什么ServiceMesh 或者 其他的和业务贴的比较近的轮子了,毕竟大部分人还是会为了钱脑壳疼的
作者:佩奇的弟弟
链接:https://www.zhihu.com/question/445283801/answer/1884932955

感受到的目前的商业大方向以及技术大方向:

  1. 云原生+时代–降本增效
  2. 高性能数据库+HTAP–数据分析应用