摘要:
一、Linux的安全性 用户权限是通过创建用户时分配的用户ID(User ID,通常缩写为UID)来跟踪的。UID是数值,每个用户都有唯一的UID 在登录系统时用的不是UID,而是登录名。登录名是用户用来登录系统的最长八字符的字符串,同时会关联一个对应的密码。 1.1 /etc/passwd文件 L 阅读全文
摘要:
一、全局环境变量 全局环境变量对于所有shell会话和生成的子shell都是可见。 查看所有全局变量env 查看某个全局变量printenv HISTSIZE 创建全局变量 先创建局部变量my_variable="ouyang" 然后export my_variable 父shell 创建全局环境变 阅读全文
摘要:
1.1 进程列表 可以在一行,指定依次运行的一系列命令,如pwd; ls。但是这不是进程列表。 进程列表需要用括号包裹起来,如(pwd; ls),进程列表是创建子shell进行运行。 $BASH_SUBSHELL,返回0,则表示没有创建子shell。 1.2 后台模式 在命令的末尾加入& sleep 阅读全文
摘要:
二、进阶命令 2.1 ps命令 作用:监测进程。 ps aux:显示所有用户的进程 可以看见CPU使用率,内存使用率、进程状态 ps -ef系统上运行的所有进程 可以看见PPID 一些信息 UID:启动这些进程的用户。 PID:进程的进程ID。 PPID:父进程的进程号(如果该进程是由另一个进程启动 阅读全文
摘要:
一、基本命令 1.1 man手册 基本使用 man 具体命令 空格翻页,回车下一页 q退出 man内容分区 1:可执行程序或shell命令 2:系统调用 3:库调用 4:特殊文件 5:文件格式与约定 6:游戏 7:概览、约定及杂项 8:超级用户和系统管理员命令 9:内核例程 可以使用man 7 ho 阅读全文
摘要:
[题目链接](661. 图片平滑器 - 力扣(LeetCode)) 解题思路 题目不难,关键是怎么写得【优雅】 一般这种枚举的题,我们可以定义一个【方向】数组,然后直接for循环遍历这个【方向】数组,代码会更优雅,直接看代码 代码 class Solution { public: vector<ve 阅读全文
摘要:
题目链接 解题思路 用双指针,或者辅助数组的方法这里就不过多解释了,现在说最优解。 我们可以利用两个数组「有序」的特点,找到其中位数。 直接举例子,假设其中一个数组nums1是[1, 3, 5, 7, 9],另一个数组nums2是[2, 4, 6, 8],中位数我们先人工算出来,是5,也就是整体的第 阅读全文
摘要:
题目链接 解题思路 子串问题,思考,「以i开头」结果是什么,求出所有的结果,然后最长的那个就是答案。或者「以i结尾」结果是什么,求出所有的结果,最长的那个就是答案。 本题使用「以i开头」结果是什么。 当求出i开头的结果是[i, j],那么怎么求i+1的结果?其实就是滑动窗口。现在的窗口是[i, j] 阅读全文
摘要:
题目链接 解题思路 一道回溯的题目。 我现在在[i, j],然后处理到单词的index位置,index之前的都已经解决了,现在要往哪走?很明显如果[i + 1, j]的位置等于index的单词,我可以去「试试」能不能走通。所以其实很简单,每当来到[i, j],单词index,我就看上下左右四个位置, 阅读全文
摘要:
题目链接 解题思路: 对于这类递归问题,采用「宏观」思考模式。 对于任意一个节点A,左子树先「展开为链表」,右子树再「展开为链表」,然后A节点,将左子树的结果,和右子树的结果,「串在一起」即可。 左子树展开为链表,所以要返回两个节点,一个是链表的头,然后是链表的尾。 代码 /** * Definit 阅读全文