ARST打卡第117周[117/521]

Algorithm

lc_1337_矩阵中战斗力最弱的K行

2021年08月01日12:41 应该就是把 count, lien_id绑定,然后排序,AC,下面给出自己的题解

  1. 可以优化的地方,二分选择出行中最后的一个1的位置
  2. 可以建堆或者选择排序来优化快速排序所有元素

这两个优化都可以去lc官网看题解

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
class Solution {
public:
static bool comp(const pair<int, int> a, const pair<int, int> b) {
if (a.first != b.first) {
return a.first < b.first;
}
return a.second < b.second;
}

// 2021年08月01日12:41 应该就是把 count, lien_id绑定,然后排序
vector<int> kWeakestRows(vector<vector<int>>& mat, int k) {
vector<pair<int, int> > tmp;
for (int i = 0; i < mat.size(); i++) {
int lien_count = 0;
for (auto x : mat[i]) {
lien_count += x;
}
tmp.push_back({lien_count, i});
}

sort(tmp.begin(), tmp.end(), comp);

vector<int> ans;
for (int i = 0; i < k; i++) {
ans.push_back(tmp[i].second);
}

return ans;
}
};

Review

TED演讲一个让记忆力提升3倍的技巧

1.检查:检查自己现在的记忆方法有什么不好。
(比如只是不停的重复背诵导致毫无效果)
2.体验:让自己开放地接受各种不同方法,并找到适合自己最佳的记忆方法。
(比如演讲者现场描述的情景记忆,利用身体器官辅助记忆)
3.实验:将最适合自己的方法运用到实际中。
其实在各个领域都需要记忆,因为这样你会比其他人做得更好。让自己时刻保持开放,这样就能不断调整转换记忆方式,与时俱进。

Tips

错误:reference to non-static member function must be called

指向类成员的指针

Share-gdb调试smb

  1. windows打开共享目录,并留意当前时间
    1. 如果是脚本跑,给你的脚本下断点
  2. /usr/local/samba/bin/smbstatus 找出对应时间对应客户端ip的 pid
  3. gdb attach ${pid}
  4. b 对应函数
  5. c(直接继续运行)
  6. 操作文件调试,看断点附近的内容
    1. p\x 变量 (这样可以输出16进制)