ubuntu挂载新分区
我使用的是windows11与ubuntu22.04双系统,当时装ubuntu的时候还是以windows做主力的,所以内存只分了100G,现在ubuntu使用的越来越多,windows好几天才启动一次,100G的空间有点不够用了,就想扩容一下 最开始还是想直接分到根目录下的,找了找教程,有点麻烦,而且有挺大的风险,于是就找了这个替代方案 从windows压缩空间: win + x进入磁盘管理,找到空闲空间比较大的盘,右键选择压缩卷,输入想要给ubuntu的空间大小 点击压缩,等待一会就可以看间出现了一块未分配的空间 在ubuntu上挂载: 打开disks,可以看见在windows创建出来的未分配空间, 点击下面的+创建新分区 创建分区时类型要选择Ext4 设置自动挂载 点击刚刚设置好得分区下面的齿轮图标,选择“编辑挂载选项”,关闭用户会话默认设置,勾选“在系统启动时挂载”,命名挂载点,确定 新挂载的分区默认只有root才能写入,所以要修改所有权 sudo mkdir 挂载点 sudo mount -a挂载新分区 sudo chown -R...
docker
docker与虚拟机的区别 虚拟机是模拟硬件创建虚拟操作系统,运行多个虚拟机就是运行多个操作系统,docker还是使用宿主机的操作系统 容器与镜像 镜像是程序安装包,容器是运行中的程序,一个镜像可以run出多个容器 常用命令 12345678910111213#我们可以使用docker pull images#从仓库下载到本地,要启动镜像的容器输入`run`命令#查看当前容器列表docker ps -a#开启停止状态的容器docker start <容器名称/容器ID>#停止容器直接输入stop命令 docker stop <容器名称/容器ID>#如果我们不需要使用容器了,那么可以将容器删除,但是注意只有容器处于非运行状态时才可以删除:docker rm <容器名称/容器ID>#容器在停止后自动删除,我们可以在运行时添加--rm参数:docker run --rm 镜像名称 构建镜像 dockerfile FROM: 一个dockerfile必须以FROM指令开始 作用:指定基础镜像 COPY 作用:将你宿主机 (你电脑)...
dp完全背包.md
看代码随想录一直不太理解这两句话 如果求组合数就是外层for循环遍历物品,内层for遍历背包。 如果求排列数就是外层for遍历背包,内层for循环遍历物品。 为什么是这样? 12345678// 求组合数// 外层循环:遍历物品(颜料)for (int item : items) { // 内层循环:遍历背包容量(货架格子) for (int j = item; j <= capacity; j++) { dp[j] += dp[j - item]; }} 第一轮 (拿出红色颜料):你拿着红色颜料,从头到尾把货架上所有能刷的地方都刷一遍,更新一遍货架的状态。刷完后,你把红色颜料放回去,并且再也不碰它了。 第二轮 (拿出蓝色颜料):你拿着蓝色颜料,在当前已经有了红色的货架的基础上,再把所有能刷的地方刷一遍。因为你固定了物品的使用顺序。你总是先用完所有可能的红色,再用蓝色,再用绿色。所以,你最终得到的方案里,颜色出现的顺序必然是 (红, 蓝, 绿),你永远不会得到 (蓝, 红, 绿)...
postgreSQL学习笔记(三)
聚合函数 对一组值进行计算,返回单个值,将多行数据压缩成一个统计结果 常用函数 COUNT(*):统计行数 SUM(colum) AVG(column):计算平均值 MAX(column) MIN(column) 12345-- 计算总员工数SELECT COUNT(*) FROM employees;-- 计算公司月薪总支出SELECT SUM(salary) FROM employees; GROUP BY子句 用于将数据按一列或多列进行分组 在SELECT语句中出现的列,并且没被聚合函数包裹都必须出现在GROUP BY子句中 12345678SELECT grouping_column, aggregate_function(column_to_aggregate)FROM table_nameGROUP BY grouping_column; 窗口函数 不改变原始行数,在每一行后面添加聚合计算结果 GROUP...
postgreSQL学习笔记(二)
性能优化-索引 索引可以提升数据库查询性能 索引是预先创建的一种有序的数据结构 创建索引 CREATE INDEX index_name ON table_name (column_name); 验证索引是否生效 EXPLAIN SELECT * FROM table_name WHERE indexed_column = 'some_value'; Seq Scan表示使用全表扫描没用索引 Index Scan表示成功使用索引 索引的好处说完了,代价呢? 空间成本:会占用额外的硬盘空间 维护成本:虽然增加了查询SELECT的速度,但是当数据库要INSERT,UPDATE,DELETE等操作时,还要额外操作索引,降低写操作的速度 使用原则 给谁用 出现在WHERE子句的列 使用JOINd的列 使用ORDER BY的列 谁慎用 写的操作比较多的列 值的重复度比较高的列(比如值是性别) 索引失效 通配符在前面的时候,索引会失效 WHERE name LIKE '张%'; – 能使用索引 (从目录的’Z’部分开始找)。 WHERE name LIKE...
力扣HOT100/最长回文子串
比较难懂的一道题,我看题解看了半天才想明白 题目链接 第一想法是暴力枚举所有的子串,然后判断是否回文,但是太过复杂,判断子串回文要O(n)O(n)O(n),一共有O(n2)O(n ^ 2)O(n2)的子串,整体的时间复杂度就是O(n3)O(n ^ 3)O(n3) ,有点慢 方法一:中心扩展法 回文串无论长短都是中心对称的,这个方法就是遍历中心,然后不断扩展,唯一注意的就是回文串长度是奇数还是偶数,奇数是以字符为中心,而偶数就是以字符间的缝隙为中心,所以循环遍历的条件是i < 2 * n - 1 方法二:Manacher算法
postgreSQL学习笔记(一)
postgreSQL学习笔记(一) 基础环境 创建数据路 CREATE DATABASE datebase_name; 切换数据库 \c database_name; 查看表结构 \d table_name; 创建表 CREATE TABLE table_name; 数据操作 插入数据:INSERT INTO; 查询数据:SELECT column1,column2 FROM table_name; 修改数据:UPDATE table_name SET column1 = new_value1 WHERE condition; 删除数据:必须使用where指定删除哪一行,否则会删除整个表 DELETE FROM table_name WHERE condition; 数据查询与表的结构修改 条件查询 SEWLECT * FROM table_name WHERE condition1 AND/OR condition2; 结果排序 SELECT * FROM table_name ORDER BY column_name...





