Contents

ARST打卡第138周[138/521]

Algorithm

lc1078_Bigram分词

直接模拟题意,遍历一遍即可 链接:https://leetcode-cn.com/problems/occurrences-after-bigram/solution/bigram-fen-ci-by-leetcode-solution-7q3e/

 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
class Solution {
public:
    vector<string> findOcurrences(string text, string first, string second) {
        vector<string> words;
        int s = 0, e = 0, len = text.length();
        while (true) {
            while (s < len && text[s] == ' ') {
                s++;
            }
            if (s >= len) {
                break;
            }
            e = s + 1;
            while (e < len && text[e] != ' ') {
                e++;
            }
            words.push_back(text.substr(s, e - s));
            s = e + 1;
        }
        vector<string> ret;
        for (int i = 2; i < words.size(); i++) {
            if (words[i - 2] == first && words[i - 1] == second) {
                ret.push_back(words[i]);
            }
        }
        return ret;
    }
};

Review

TED-快节奏的生活让我们失去了什么?

历史的车轮滚滚向前,生活的速度越来越快,我们常被裹挟以焦虑,所以我们应该适当给一些时间让自己静下来 思考自己的方向以及放松自己的身心,而非盲目得追求速度

Tips

我做系统架构的一些原则

Share-man查询linux系统调用

man

man read,我想看的是ANSI C中stdio的read函数原型和说明,没想到出来的确是BASH命令的说明,这是怎么回事呢?

原来read本身是man命令的一个参数,这样输入man就会以为你要使用read的功能,而不是查看read函数,那么要怎样查看read函数呢?

答案是使用:man 2 read 或者是 man 3 read

中间的数字是什么意思呢?是man的分卷号,原来man分成很多部分,分别是:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
1 用户命令, 可由任何人启动的。
2 系统调用, 即由内核提供的函数。
3 例程, 即库函数,比如标准C库libc。
4 设备, 即/dev目录下的特殊文件。
5 文件格式描述, 例如/etc/passwd。
6 游戏, 不用解释啦!
7 杂项, 例如宏命令包、惯例等。
8 系统管理员工具, 只能由root启动。
9 其他(Linux特定的), 用来存放内核例行程序的文档。
n 新文档, 可能要移到更适合的领域。
o 老文档, 可能会在一段期限内保留。
l 本地文档, 与本特定系统有关的。

要查属于哪一部分的,就用哪一部分的编号在命令之前。