工作三年,劝劝大家第一份工作千万不要盲目(by cc98不杀)

关于互联网公司,第一份工作一定要选两种:要不公司发展前景好,要不能锻炼个人能力。 解释一下这句看起来像废话的话: 就年薪来说大家的选择往往是:CS相关专业去互联网公司技术岗,进不去的为了高薪去非技术岗。一切选择都是互联网公司至上。 技术岗:个人认为ATT比较好,AT是top2不用多说,头条相对美团滴滴不太受到单一模式限制,发展比较好。 非技术岗:互联网公司的非技术岗,销售HR还行,运营公关pr等等 …

Continue reading

我对科研的理解以及我为什么转cs(by cc98自由的风哦)

初来我浙时,我梦想做一个科学家,别人都说我话不多,适合搞研究,我也觉得是这样。那是一个没有“转cs”这个词的年代,直到今天我也记得当时三表舅劝过我选cs专业好就业,但是我没听,我觉得都来了全国前三的大学了,不去为人类文明发展做研究也太浪费了,其他亲属也都支持我自己做决定。 于是我在大二时选择了电气专业,当时热门的专业是统计和cs,我觉得其他人只不过是为了赚钱,燕雀安知鸿鹄之志,在EE强校浙大我肯定 …

Continue reading

[leetcode题解]1325.Delete Leaves With a Given Value(删除给定值的叶子节点)

给你一棵以 root 为根节点的的二差树和一任意一个value值 ,需要删除树种所有与该值相等的叶子节点 。 caution,一旦去除值为value的叶子节点,其上一个节点点就可能变成新的叶子节点。需要对新的叶子节点做同样的判断处理,即如果值相同,需要重复该操作,一直做到不能删除为止。 题解: 本题目是一个有关树的操作,题目的意思是给定一个二叉树,并给定一个数字,要求在二叉树中搜索所有的 …

Continue reading

服务或者组件去root权限最小化方案分析

很多进程或服务为了系统安全,需要去root运行,说白了就是使用非root用户运行。这样的好处是一旦进程或者服务中有漏洞被入侵了,不会影响到整个系统的安全。 进程或者服务去root的大致流程如下: 在服务脚本中配置服务启动用户(非root用户),这个用户可以在该组件的rpm包安装的时候创建,并分配一定的权限,通常我们在spec文件中进行操作即可。 服务去了root权限之后,会失去很多root特权,导 …

Continue reading

[leetcode]1306.跳跃游戏II

本题目一看题目是一道搜索题,可以用深度优先搜索或者使用广度优先搜索,但是看了一下题目中给定的数字的范围<=5*10^4次方。 这个数量级直接使用深搜会超时,那就使用广度优先搜索好了。 广搜相对来说比较简单,主要是队列入出,分支判断,跳出标准,以上三点基本就能写出来了。 队列直接使用c++内置的队列queue就好了,分支判断主要是包括任何一个坐标他既可以+arr[idx],也可以-arr[i] …

Continue reading

字典树trie-tree纯c语言leetcode实现模板

leetcode c语言trie树前缀实现 应对leetcode大部分字符串快速查找,插入,前缀匹配 该模板方便leetcode后续做题 前缀树主要是通过共享前缀的方式,保证大部分拥有共同前缀的字符串能够方便的被找到,查询。 #define N 27 struct Trie{ struct Trie *ch[N]; bool is_end; }; typedef struct Trie Trie; …

Continue reading

开发日志模块时__VA_ARGS__怎么用va_start,va_end,va_copy用法说明

一.__VA_ARGS__ 使用   在写log模块的时候,一般都会用到变长参数的处理,此时就会涉及到__VA_ARGS__宏,以及va_start, va_end,va_copy等函数来协助完成。   1.__VA_ARGS__只能用在宏定义中,用在函数中,gcc编译不过 2.要特别注意,如果边长参数为空的时候,在打印时会有额外逗号的问题   例如: #define ILOG(fmt, &#82 …

Continue reading

[leetcode题解]542.01 Matrix

给定一个由 0 和 1 组成的矩阵,找出每个元素到最近的 0 的距离。 两个相邻元素间的距离为 1 。 示例 1:  输入: 0 0 0 0 1 0 0 0 0 输出: 0 0 0 0 1 0 0 0 0 示例 2:  输入: 0 0 0 0 1 0 1 1 1 输出: 0 0 0 0 1 0 1 2 1 注意: 给定矩阵的元素个数不超过 10000。 给定矩阵中至少有一个元素 …

Continue reading

[leetcode题解] 16. 3Sum Closest

给定一个包括 n 个整数的数组 nums 和 一个目标值 target。找出 nums 中的三个整数,使得它们的和与 target 最接近。返回这三个数的和。假定每组输入只存在唯一答案。 例如,给定数组 nums = [-1,2,1,-4], 和 target = 1. 与 target 最接近的三个数的和为 2. (-1 + 2 + 1 = 2). Given an array nums of …

Continue reading

vmware启动虚拟机搭建dpdk实验环境

下载vmware和centos镜像文件。 启动vmware并使用镜像文件创建一个虚拟机。 给虚拟机添加一个网卡(NAT模式),然后在host上网络适配器中vmnet8中配置个ip地址和子网掩码,比如设置192.168.2.1,子网掩码为255.255.255.0,然后在vmware的编辑->虚拟网络编辑器,设置vm8,设置其nat属性,网关设置同host主机ip在同一个网段即可,如设置192 …

Continue reading

13. Roman to Integer

罗马数字包含以下七种字符:I, V, X, L,C,D 和 M。 字符 数值 I 1 V 5 X 10 L 50 C 100 D 500 M 1000 例如, 罗马数字 2 写做 II ,即为两个并列的 1。12 写做 XII ,即为 X + II 。 27 写做&nb …

Continue reading

leetcode题解刷题汇总

leetcode题目不断刷新,大家也都一直在刷,本文记录作者刷题记录,一直更新,权当抛砖引玉,欢迎大家一块交流学习。如果各位leetcoder发现题解有问题,欢迎指正交流,也希望大家可以提出更新颖的解题方法。新建leetcode算法交流群259150720,欢迎leetcoder进群交流。 0001 Two Sum array Easy 0002 Add Two Numbers linked li …

Continue reading

收发包调优策略(一)

客户需要用到一种场景:A-B-C三台虚拟机位于三个独立的host上,A到B配置vxlan,B到C配置vxlan,A到C不配置vxlan,从而A和B可以通信,B和C可以通信,但是A和C不能直接通信,然后在A上添加路由route add -host IP_of_C gw IP_of_B,同理在C上配置路由route add -host IP_of_A gw IP_of_B,也就是当A打算与C通信时将报 …

Continue reading

[leetcod题解]684. 冗余连接

在本问题中, 树指的是一个连通且无环的无向图。 输入一个图,该图由一个有着N个节点 (节点值不重复1, 2, …, N) 的树及一条附加的边构成。附加的边的两个顶点包含在1到N中间,这条附加的边不属于树中已存在的边。 结果图是一个以边组成的二维数组。每一个边的元素是一对[u, v] ,满足 u < v,表示连接顶点u 和v的无向图的边。 返回一条可以 …

Continue reading