我太菜了

喜欢写Hello World的未来程序员.

25. Reverse Nodes in k-Group

链表K个一组翻转

晨起开门雪满山 雪睛云淡日光寒 链表题,这个题目第一次遇到是在PAT甲级的题库中,还记得当初刷过两遍的PAT甲级。。。 题目其实蛮简单,大部分人其实都做过链表的翻转,头插法或者尾插法。这道题也一样,按照K个分组进行尾插法或者头插法翻转每个分组的链表。 稍微麻烦点就是要维护每次翻转后的分组链表的尾巴。。。就这么简单。 /** * Definition for singl...

837. New 21 Game

累积和大于等于K而小于等于N的概率

空山新雨后 天气晚来秋 先说明,这次的题解我会写的非常详细,因为这是我见过的非常动态规划的题。。。 这种题一看就是dp题,dp题我就喜欢先暴力,再慢慢推导出转移公式。。。但这次我却暴力不出来了,发现枚举的每一种和并不是等概率的。。。 然后就写出来错误代码: class Solution { private: void dfs(int sum, int k, int n...

ptrace等调试方法的权限问题

ptrace以及gdb等调试工具的权限问题

宁可枝头抱香死 何曾吹落北风中 问题的表现通常是开发人员在使用gdb或者ptrace系统调用的时候,对应的errno == 1: ptrace: Operation not permitted. 这个问题在CLion的帮助文档里有说明,为了避免ptrace失败,可以sudo执行进程,或者是执行如下命令: echo 0 | sudo tee /proc/sys/kern...

1124. Longest Well-Performing Interval

图算法题

雨中黄叶树 灯下白头人 单调栈的题总是让我很难理解,虽然看到这道题时眼前一亮(无产者团结起来!!!)。。。 这道题首先需要进行转化,转成[1, -1]数组,比如: A: 9 9 6 0 6 6 9 B: 1 1 -1 -1 -1 -1 1 问题转化成:找到数组B中,连续且整数和大于0的最长序列。 如果求下标i到j的连续和,要么用之间连续的数相加,要么用[0,...

399. Evaluate Division

图算法题

荷风送香气 竹露滴清响 C++,图论题。 利用hash表记录字符串到整型key的映射 用图的边表示除的关系值,即除和被除 对每条查询,dfs从头跑到尾,中间乘起来就行了 只是代码写起来麻烦,思路还是简单的。 class Solution { private: const int MAXG = 100; double dfs(vector...

fork + execl获取子进程资源使用信息

OJ如何获取子进程执行信息(内存,执行时间)?

直道相思了无益 未妨惆怅是清狂 问题是什么? 如果要命令行运行某个程序,那么如何知道这个进程对资源的使用量呢? 从我的知识角度来说,第一反就是通过特殊的文件系统,比如读取/proc/<pid>/目录下的某个文件,比如/proc/[pid]/stat就会列出进程使用的CPU信息和内存信息,包括峰值和实时的值。 但问题就是进程退出后,/proc/[pid]/st...

leveldb中skip-list的实现

你快乐吗

不思量 自难忘 再次准备搞起leveldb了,这次从跳表开始弄,准备自己实现一下。

MIT6.828的lab1的内容

你快乐吗

今人不见古时月 今月曾经照古人 每一个lab都有大量的翻译文章和博客,然后对于这些文章中我认为比较重要的以及没有说清楚的部分进行补充和说明。 Part 1: PC Bootstrap 这里必须说以下CS和IP,这两个都是寄存器。 CS是代码段寄存器,IP是指令指针寄存器(相当于偏移地址)。修改CS、IP的指令不同于修改通用的寄存器值的指令,修改通用寄存器的值可以用mov...

leetcode的hard题解法

你快乐吗

128. Longest Consecutive Sequence 好像还有其他的解法,我这里觉得还是并查集合适。。。 比较麻烦的就是并查集这个数组如何表示。 这里我用next数组表示,其中next[i]: next[i]如果小于零,则-next[i]表示这个集合里的个数 next[i]如果大于等于零,则next[i]表示下一个结点的下标 然后就按照正常并查集的操作就行...

85. Maximal Rectangle

你快乐吗

雨打梨花深闭门 忘了青春 误了青春 套84的解法,以每一行往上作为柱状图,每列网上连续的‘1’为柱。 需要注意的是,heights的更新使用dp,不然还是超时。。。 class Solution { private: vector<int> getEdge(vector<int> &heights, int step) { ...