Algorithm
lc1027_最长等差数列
下标不用等差,那就是暴力O(n^3),但是超过数据范围了,就算剪枝也有可能tle
然后看了答案之后才发现nums[i]
取值范围又用用意,是需要动态规划
题解非常巧妙,可以学习一下
主要是状态思考,状态转移的思考,多多回味一下
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
|
class Solution {
public:
int longestArithSeqLength(vector<int>& nums) {
auto [minit, maxit] = minmax_element(nums.begin(), nums.end());
int diff = *maxit - *minit;
int ans = 1;
for (int d = -diff; d <= diff; ++d) {
vector<int> f(*maxit + 1, -1);
for (int num: nums) {
if (int prev = num - d; prev >= *minit && prev <= *maxit && f[prev] != -1) {
f[num] = max(f[num], f[prev] + 1);
ans = max(ans, f[num]);
}
f[num] = max(f[num], 1);
}
}
return ans;
}
};
|
Review
【TED演讲】提升自信的技巧
如何变得自信
- 在自己想要自信的事情上不断练习上万次
- 不断给自己好的心理暗示,可以写信给未来有成就的自己,不断阅读这个信
作为长辈:
表扬其他做得好的人来激励做得不好的人,但不要直接批评做得不好的人
如果是你一定要达成的事情,即使所有人都不相信你,你也要相信自己
Tips
快速上手好用的mermaid时序图
Share-硬链接拷贝的使用思考
linux-posix环境的二次link测试:
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
34
35
36
|
⚡ 04/20|19:38:44 test echo "hello" > hello
⚡ 04/20|19:38:56 test ln hello hello-link1
⚡ 04/20|19:39:11 test ll
total 16K
-rw-r--r-- 2 root root 6 Apr 20 19:38 hello
-rw-r--r-- 2 root root 6 Apr 20 19:38 hello-link1
⚡ 04/20|19:39:12 test ln hello-link1 hello-link-link
⚡ 04/20|19:39:34 test ll
total 20K
-rw-r--r-- 3 root root 6 Apr 20 19:38 hello
-rw-r--r-- 3 root root 6 Apr 20 19:38 hello-link-link
-rw-r--r-- 3 root root 6 Apr 20 19:38 hello-link1
⚡ 04/20|19:39:35 test cat hello-link-link
hello
⚡ 04/20|19:39:44 test echo "link-link-ap-write" >> hello-link-link
⚡ 04/20|19:40:20 test cat hello
hello
link-link-ap-write
⚡ 04/20|19:40:24 test echo "link1-ap-write" >> hello-link1
⚡ 04/20|19:40:53 test cat hello
hello
link-link-ap-write
link1-ap-write
⚡ 04/20|19:40:57 test cat hello-link1
hello
link-link-ap-write
link1-ap-write
⚡ 04/20|19:41:05 test cat hello-link-link
hello
link-link-ap-write
link1-ap-write
⚡ 04/20|19:46:46 test ls -lhti
total 20K
52367 -rw-r--r-- 3 root root 40 Apr 20 19:40 hello
52367 -rw-r--r-- 3 root root 40 Apr 20 19:40 hello-link-link
52367 -rw-r--r-- 3 root root 40 Apr 20 19:40 hello-link1
|
硬链接
实现对file1的一个硬连接。不能跨分区,文件夹无效。不同于拷贝(复制)。修改file1,file2会变;修改file2,file1会变。删除file1后file2任然存在且可用(数据仍然为file1的数据)。
每对file1增加一个硬连接,系统对file1的对应的硬盘数据节点的连接数加1,其Inode是共用的。当删除file1或file2等其它硬连接时,对磁盘对应的数据节点连接数减1,只有当连接数为0时,才真正的删除数据(inode)。
硬链接的一个好处就是,文件移动到其他位置,仍旧有效,而软链接会出因为路径问题而无效。