tmp

最短无序连续子数组

喜你入骨 提交于 2020-02-07 03:03:45
给定一个整数数组,你需要寻找一个连续的子数组,如果对这个子数组进行升序排序,那么整个数组都会变为升序排序。 你找到的子数组应是最短的,请输出它的长度。 示例 1: 输入: [2, 6, 4, 8, 10, 9, 15] 输出: 5 解释: 你只需要对 [6, 4, 8, 10, 9] 进行升序排序,那么整个表都会变为升序排序。 解题思路:先创建一个数组tmp,将原数组拷贝过去,再对tmp进行排序。然后和原数组进行比对得到所求长度。 class Solution { public: int findUnsortedSubarray(vector<int>& nums) { vector<int>tmp = nums; sort(tmp.begin(), tmp.end()); int left = 0; int right = nums.size() - 1; while(left < right && nums[left] == tmp[left]) left++; while(left <= right && nums[right] == tmp[right]) right--; return right - left + 1; } }; 来源: CSDN 作者: _In2ne1 链接: https://blog.csdn.net/qq_42644428/article

Ubuntu用pip时出现ERROR: Could not install packages due to an EnvironmentError: [Errno 28] 设备上没有空间的解决方法

社会主义新天地 提交于 2020-02-06 08:58:26
问题描述: 在终端使用 df -h 查看各分区的使用情况,发现我在安装Ubuntu分的根目录只有20G,已经用了89%了,似乎系统会默认保留10%的大小,而pip install的安装方式是会把文件先下到tmp文件夹里,所以显示设备没有空间的问题。 解决方法: 使用 gparted 来给Ubuntu根目录空间大小扩容 因为怕扩容出现问题,准备答辩结束了再操作,免得把双系统搞死了。。 暂时修改tmp的位置: cd ~ mkdir tmp export TMPDIR = ~/tmp (这里我 /home 的空间大小还挺多,所以可以用 /home 来装临时文件) 修改了tmp的位置,再用pip install就可以正常安装啦~ 来源: CSDN 作者: 六六六六神 链接: https://blog.csdn.net/weixin_41848012/article/details/103655195

cp企业案例-alias-unalis企业实践及应用

淺唱寂寞╮ 提交于 2020-02-06 07:50:36
cp企业案例-alias-unalis企业实践及应用 1、mkdir:递归创建目录:-p 注意:如果tree 命令不存在。可以使用yum install tree -y 安装 [root@localhost data]# mkdir -p /data/test/a/b/c/d [root@localhost data]# tree /data /data |-- a.txt |-- b.txt |-- c.txt |-- test | -- a | – b | -- c | – d `-- test.txt 5 directories, 4 files 2、cp不提示拷贝文件 \cp /mnt/test.txt /tmp /bin/cp /mnt/test.txt /tmp [root@localhost data]# cp /mnt/test.txt /tmp/ cp: overwrite `/tmp/test.txt’? y [root@localhost data]# \cp /mnt/test.txt /tmp [root@localhost data]# /bin/cp /mnt/test.txt /tmp **3、alias:创建或查看别名,只是临时生效 ** 1)通过给危险的命令加一些保护参数,防止人为误操作。 2)把很多复杂的字符串或命令变成一个简单的字符串或命令。

Luogu P4169 [Violet]天使玩偶/SJY摆棋子

馋奶兔 提交于 2020-02-06 03:17:56
学了不清真的 \(sort\) 写法 \(CDQ\) 分治的蒟蒻在本题的数据面前瑟瑟发抖。。。。。 实际上就是一个常规的 \(CDQ\) 模型,但是关键难点有两个: 需要进行四次 \(CDQ\) 。你可以选择把图旋转四次, 也可以像我一样写四次 \(solve\) 从而获得 \(7kb\) 的代码 用树状数组维护区间最大值的时候 \(y\) 可能为 \(0\) ,会死循环,要 \(+1\) 处理。 不要使用不清真的 \(sort\) 写法! \(Code:\) // luogu-judger-enable-o2 #include <bits/stdc++.h> using namespace std; const int N = 300000 + 5; const int M = 600000 + 5; const int K = 1000000 + 100; const int MaxK = 1000000 + 50; const int INF = 0x3f3f3f3f; #define lowbit(x) (x & -x) int n, m, tot, qry[N], qryid; struct Node { int x, y, w, id, ans, opt; // 1 / 2 : 操作 / 查询 void out () { if (opt == 1) { cout <<

【linux】linux权限管理

穿精又带淫゛_ 提交于 2020-02-06 02:08:23
一、权限的基本概念 权限: 访问计算机资源或服务的访问能力。 Linux中,每一个资源或者服务的权限,分别定义了三组用户的使用能力。 文件的属主(u) 文件的属组(g) 其他用户(o) 对于每一类用户来说,可以对某个 文件 有三种权限: r:可读,可以使用类似cat,more,less等命令查看文件内容。 w:可写,可以编辑或者删除此文件。 x:可执行,可以在命令提示符下,当做命令提交给内核运行,一般对文件默认没有此权限,否则可能执行恶意代码。 对于 目录 来说, r:可以对此目录执行ls以列出内部的所有文件 w:可以在此目录中创建文件。 x:可以使用cd切换进此目录,也可以使用ls -l查看内部文件的详细信息。 进程的安全上下文(secure context) : 进程是用户发起的,是用户操作计算机的代理。进程也是有属组和属主的。谁发起的进程,进程就以谁的身份运行。比如,A和B同时执行ls命令,这两个进程属 主不同,因此获得对某文件的权限也不同,如果文件的属主刚好和进程A的属主相同,那么A就可以访问该文件,也就是说有访问权限。如下代码,drwxr-xr-x 3 root root 4096 Oct 16 20:57 m,第一个字段drwxr-xr-x中rwx为属主的权限,r-x为属组的权限,r-x为其他用户的访问权限。第三个字段便是属主,第四个字段是属组。 root@hao:~#

linux基础之head、tail、rm、mv、cp学习笔记(3)

旧时模样 提交于 2020-02-05 18:02:04
9、head 作用:显示一个文件的前若干行(默认是10行) 格式: head -n file 选项: -n NUM:指定显示前NUM行 例子:显示文件1.txt的前10行 # head 1.txt 例子:显示文件1.txt的前3行 # head -n 3 1.txt 10、tail 作用:显示一个文件的末尾若干行(默认是10行) 格式:tail 选项file 选项: -n: 指定显示末尾n行 -f:动态监控一个文件中的内容变化 例子:显示文件1.txt的末尾10行 #tail 1.txt 例子: 显示文件1.txt的末尾3行 #tail -n 3 1.txt 监控1.txt中的内容变化情况 [root@localhost tmp]# tail -f 1.txt 退出监控ctrl+c 只要文件1.txt中的内容发生改变,会立刻显示在终端之上。 11、more 作用:显示一个文件中的内容(分屏显示) 12、less 作用:显示一个文件中的内容(分屏显示) 操作 回车:显示下一行 空格:显示下一屏幕 b:向上翻一屏 q:退出more或者less 补充:more和less的区别只有一个 more当到达文件末尾的时候,会自动退出 less是不会自动退出的 补充: cat 、tac: 显示比较内容较少的文件 head、tail: 显示文件的一部分 more、less:

glob

我与影子孤独终老i 提交于 2020-02-05 10:25:09
glob 在python中,glob模块是用来查找匹配的文件的 在查找的条件中,需要用到Unix shell中的匹配规则: * : 匹配所所有 ? : 匹配一个字符 *.* : 匹配如:[hello.txt,cat.xls,xxx234s.doc] ?.* : 匹配如:[1.txt,h.py] ?.gif: 匹配如:[x.gif,2.gif] 可以参考:fnmatch 如果没有匹配的,glob.glob(path)将返回一个空的list:[] ''' import glob def get_all(): '''获取目录[c:\\tmp]下面所有的文件''' return glob.glob('c:\\tmp\\*.*') def get_my_file(): '''获取目录[c:\\tmp]下面文件名为4个字符的文件''' return glob.glob('c:\\tmp\\????.txt') def get_batch_file(): '''获取目录[c:\\tmp]下面扩展名为\'.txt\'的文件''' return glob.glob('c:\\tmp\\*.txt') def main(): print('获取目录[c:\\tmp]下面所有的文件:') tem_files = get_all() print(tem_files) print('获取目录[c:\\tmp

第二周作业(更新中)

你离开我真会死。 提交于 2020-02-04 23:44:17
第2周作业 (看老王视频) 描述Linux发行版的系统目录名称命名规则以及用途。 描述文件的元数据信息有哪些,分别表示什么含义,如何查看?如何修改文件的时间戳信息? 总结软连接和硬连接区别,并用实例操作说明。 Linux上的文件管理类命令都有哪些,其常用的使用方法及其相关示例演示。 复制/etc/profile至/tmp/目录,用查找替换命令删除/tmp/profile文件中的 行首的空白字符 在vim中设置tab缩进为4个字符 (看马哥视频) Linux上的文件管理类命令都有哪些,其常用的使用方法及其相关示例演示。 使用命令行展开功能,创建/tmp/a1, /tmp/a2, /tmp/a1/a, /tmp/a1/b,在/tmp目录下创建目录:x_y, x_z, q_y, q_z 文件的元数据信息有哪些,分别表示什么含义,如何查看?如何修改文件的时间戳信息。 在/tmp目录下创建以tfile开头,后跟当前日期和时间的文件,文件名形如:tfile-2016-05-27-09-32-22。 复制/etc目录下所有以p开头,以非数字结尾的文件或目录到/tmp/mytest1目录中。 创建用户tom,指定UID为5001,指定家目录为/tmp/tom, 指定shell为/bin/zsh, 指定基本组为tom,附加组为jack 常用的用户以及文件管理命令有哪些,并演示命令以及用法。

算法练习

六眼飞鱼酱① 提交于 2020-02-04 23:25:17
题目:定义栈的数据结构,请在该类型中实现一个能够得到栈中所含最小元素的min函数(时间复杂度应为O(1))。 题目分析:需要定义栈数据结构,并提供找出栈内最小元素的min函数,并且时间复杂度O(1)。 思路:借助辅助栈来实现(入栈时:添加的元素小于辅助栈的最顶元素,则入到辅助栈中。出战时:辅助栈和元栈栈顶元素相等则辅助栈出栈。) 对原来栈的封装,使之实现O(1)复杂度的min方法。 1 import java.util.Stack; 2 3 public class Solution { 4 //O(1)时间复杂度,借助辅助栈来实现(入栈时:添加的元素小于辅助栈的最顶元素,则入到辅助栈中。出战时:辅助栈和元栈栈顶元素相等则辅助栈出栈。)。 5 //对原来栈的封装,使之实现O(1)复杂度的min方法。 6 Stack<Integer> stack1 = new Stack<>(),stack2 = new Stack<>(); 7 public void push(int node) { 8 stack1.push(node); 9 if(stack2.empty()){ 10 stack2.push(node); 11 }else if(node<stack2.peek()){ 12 stack2.push(node); 13 } 14 } 15 16 public void

树的直径及应用

假如想象 提交于 2020-02-04 07:15:54
树的直径:   树的直径指树上距离最远的两点间的距离,它在树上问题上有许多应用,往往通过树的直径的性质可以将一个高时间复杂度的解法变为线性求解。 树的直径的性质: ( 1 ) (1) ( 1 ) . 对树上的任意一点而言,树上与它距离最远的点一定为树的直径的两个端点的其中之一; ( 2 ) (2) ( 2 ) .直径两端点一定是两个叶子节点; ( 3 ) (3) ( 3 ) .对于两棵树,如果第一棵树直径两端点为 ( u , v ) (u,v) ( u , v ) ,第二棵树直径两端点为 ( x , y ) (x,y) ( x , y ) ,用一条边将两棵树连接,那么新树的直径的两端点一定是 u , v , x , y u,v,x,y u , v , x , y 中的两个点; ( 4 ) (4) ( 4 ) .对于一棵树,如果在一个点的上接一个叶子节点,那么最多会改变直径的一个端点; ( 5 ) (5) ( 5 ) .若一棵树存在多条直径,那么这些直径交于一点 且交点是这些直径的中点 ; 求法: (1)搜索(dfs/bfs): 步骤:   首先,以任意一点为搜索的起点,进行第一次搜索。此次搜索得到的距起点最远的点即为直径端点之一。然后以该点为起点进行第二次搜索,所得到的距其距离最远的点即为另一个端点。 复杂度: O ( n ) O(n) O ( n ) 方便记录路径 (2)树形dp