ARTS 第 陆 期

目录

内容目录

Algorithm

周赛题目:
https://leetcode.cn/problems/find-occurrences-of-an-element-in-an-array/description/
思路:
hashmap
代码:

class Solution {
public:
    vector<int> occurrencesOfElement(vector<int>& nums, vector<int>& queries, int x) {
        int n = queries.size();
        vector<int> ans;
        do {
            if (n == 0) {
              ans.push_back(-1);
              break;
            }
            int max = *max_element(nums.begin(),nums.end());
            vector<vector<int>> v(max+1);
            for (int i = 0; i < nums.size(); i++) {
                v[nums[i]].push_back(i);
            }
            for(int i = 0; i< queries.size(); i++) {
                if (x > max || queries[i] > v[x].size() ) {
                    ans.push_back(-1);
                } else {
                    ans.push_back(v[x][queries[i]-1]);
                }
            }

        } while(0);

        return ans;
    }
};

Review

https://dl.acm.org/doi/pdf/10.1145/2854146
为什么谷歌使用单仓库?

https://interrupt.memfault.com/blog/bazel-build-system-for-embedded-projects
在嵌入式项目中使用 bazel

https://www.youtube.com/watch?v=ol5hwjr48Q4&t=28s
特斯拉 FSD 团队使用 bazel 的分享

Tip

clang-format -n 可以只检测是否符合代码规范,不修改源代码格式

Share

看了 youtube 好几个视频,发现国外好几个车厂的 C/C++ 构建系统都已从 cmake 迁移到 bazel, 包括 bmw、lyft、tesla 等, bazel 构建速度确实飞快,编译速度对大型开发团队效能太重要了。

最近看到一句话,挺有启发的,分享给大家:

普通人通常在35至40岁才会明白社会运行的真相和逻辑,但这时的人们正好被钉在生活的十字架上,无力挣扎。
而上层阶级出生的人,早在20几岁时就已经通透,而且还不用考虑过多的试错成本,那是一种传承,用几代人的智慧浇灌出来的。
人生最大的浪费不是金钱的浪费,而是时间的浪费,认知的迟到。辗转半宿,刚摸到枕头,天却亮了,带着一点可怜的家底,忧心忡忡地冲上赌场,你不输,谁输?

那么社会运行的真相和逻辑到底是什么呢?

打赏作者