自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(16)
  • 收藏
  • 关注

原创 栈与逆波兰表达式求值

栈不为空:栈顶运算符优先级 ≥ 当前运算符,则弹出栈顶输出;循环直到栈空 或 栈顶优先级低于当前运算符,再把当前运算符入栈。如果是运算符:连续弹出两个数,注意:先弹出op2,后弹出op1,计算 op1 op op2,计算结果压回栈。4. 遇到右括号 ) :不断弹出栈运算符输出,直到碰到左括号;后缀(逆波兰):运算符写在操作数后面 a b + ,不需要括号。pop() :出栈,默认删除并返回列表最后一个元素(栈顶)示例: [“2”,“1”,“+”,“3”,“*”]peek() :查看栈顶元素,不删除。

2026-09-08 15:10:01 200

原创 用栈实现队列232,用队列实现栈225

双队列方案:每次新元素入栈时,放到辅助队列,再把主队列全部移入辅助队列,交换两个队列身份。主队列的队首就是栈顶元素。232.用栈实现队列。225.用队列实现栈。

2026-09-08 14:20:23 170

原创 递归、链表

3. 交换顺序不能乱:先把node1接上后面的链表,再反转node2指向node1,再让cur指向node2;循环终止条件: cur == None ,循环结束 pre 停在最后一个节点,作为反转后的头节点。输入链表头结点,输出反转之后新链表头结点。链表: 1→2→3→4→5 →5→4→3→2→1。要求:不能修改节点内部值,只能交换节点指针;例: 1‑2‑3‑4 → 2‑1‑4‑3。时间复杂度:O(n),遍历一次链表;先保存后继节点,再反转next指针,避免链表断掉。24:两两交换链表中的节点。

2026-09-04 14:49:15 218

原创 链表算法(203,707)

deleteAtIndex(index):走到index前一个位置,cur.next=cur.next.next。① cur.next.val=6: cur.next = cur.next.next 跳过6。current 指针,操作第 index 位置, current 要走到目标结点的前一个结点。dummy(虚拟头) → 1 → 2 → 6 →3 →4 →5 →6, val=6。②继续遍历,末尾遇到6,同样cur.next=cur.next.next。最后返回 dummy.next,就是新链表头。

2026-09-03 14:55:43 232

原创 数组题:双指针方法

滑动窗口: [left …right] 代表当前窗口,right不断扩大窗口,当窗口总和≥target,移动left缩小窗口,记录最小窗口长度。left指向最左 -4 ,right指向最右 10;res数组从后往前填充大数。slow慢指针:接收fast筛选出来的有效元素,代表新数组下标。示例: target=7,nums=[2,3,1,2,4,3]例如输入 nums = [-4,-1,0,3,10]fast快指针:向前跑,筛选所有不等于val的元素。209:长度最小的子数组。977:有序数组的平方。

2026-09-02 14:32:42 184

原创 数据结构与算法

计算中点推荐写法: mid = left + (right‑left)//2 ,避免直接 (left+right)//2 出现数值溢出。二分查找最核心的就是搜索区间定义,分为「左闭右闭 [left, right] 」和「左闭右开 [left, right) 」两种。,a_n),a_i代表数组的第i个元素。Python中没有原生数组,使用列表(list)模拟数组,一维列表 a=[2,5,3,1,4] ,嵌套列表可以实现二维数组。不断缩小搜索区间,直到区间为空,代表没有找到目标,返回 -1。

2026-09-01 14:08:56 172

原创 使用结构化命令

d 判断是否为目录、 -f 判断是否为普通文件、 -e 判断文件/目录是否存在、 -r 文件可读、 -w 文件可写、 -x 文件可执行。test 是Shell内置专用测试工具,作用是检测数值、字符串、文件/目录状态,返回真假退出码,专门搭配if语句使用。所有条件都不满足,执行else兜底内容。-eq 等于、 -ne 不等、 -gt 大于、 -lt 小于、 -ge 大于等于、 -le 小于等于。test / [] :通用POSIX标准,兼容所有Shell,适合基础文件、数字、字符串判断。

2026-07-17 01:03:49 201

原创 构建基本的shell脚本

name=“成都东软”num=10。

2026-07-14 08:09:33 234

原创 用户管理和文件权限

易错提醒:文件夹缺少 x 权限,哪怕给了读写权限,用户依旧无法cd进入目录,你之前 cd /home/testuser 权限不足,本质就是家目录默认没给普通组开放目录执行权限。-c “备注文字” :修改 /etc/passwd 里用户的注释(GECOS)字段,你的命令 sudo usermod -c “实训” testuser 就是修改用户备注;访问逻辑:用户登录后系统读取自身UID、所属GID,和目标文件记录的所有者UID、所属组GID比对,按权限规则放行或拒绝访问。

2026-07-09 15:59:02 163

原创 shell环境变量

一、全局环境变量、局部环境变量生效范围:仅限当前正在运行的Shell会话,新开子Shell、别的终端窗口都读取不到这个变量创建示例:bashlocal_var=“我是局部变量”bash # 进入子shellecho $local_var # 空白无输出,子进程拿不到父shell的普通局部变量生命周期:关闭当前终端/Shell会话,变量直接销毁,不会自动持久保存创建方式:局部变量搭配 export 命令导出升级为全局变量bashglobal_var=“全局测试内容”

2026-07-09 14:10:35 164

原创 理解shell

bash(Bourne Again Shell):Ubuntu、CentOS系统默认登录Shell,兼容性强、内置功能丰富,支持命令补全、历史命令检索、脚本拓展,图里虚拟机默认终端、手动输入 bash 拉起的进程都是bash。手动敲 bash 命令,父Shell会fork创建新进程,生成子Shell(PID 4192)。判定是否处于子Shell: echo $BASH_SUBSHELL ,返回 0 =父Shell,≥1=嵌套的子Shell(你第一次执行返回0、创建目录后返回1,验证子Shell生效)。

2026-07-08 14:08:13 157

原创 使用vim编辑器和shell命令补充

采用全屏控制台模式,是运维、开发最常用工具,基础功能为纯文本编辑,内置丰富高级功能:文本全局查找、内容批量替换、代码分屏、语法高亮、快捷键批量操作,适合配置文件修改、代码编写。Linux系统提供控制台、图形界面两类文本编辑器,分为三大板块:vim编辑器、nano编辑器、其他拓展编辑器,适配不同操作场景。本模块覆盖 echo 输出、管道符、重定向、文件合并四大核心操作,是Shell文本处理、日志操作的基础。emacs:同时支持控制台、图形双模式,多缓冲区机制,可同时打开、编辑多个文件,拓展插件丰富;

2026-07-06 15:42:11 225

原创 bash shell命令

压缩: gzip test.txt 生成 test.txt.gz,原文件消失。模块2:磁盘与设备管理(mount/umount / df / du)用途:动态刷新界面,实时查看CPU、内存、进程负载,判断系统运行状态。ps aux :查看全部进程,包含用户、CPU、内存、PID、命令。ps -ef :完整格式查看所有进程,PPID父进程ID。用途:一次性列出当前运行进程,静态输出,不会实时刷新。模块1:进程管理(ps / top / kill)kill PID :温和终止进程(默认15信号)

2026-07-03 15:36:49 196

原创 Linux的基础知识和常见命令

文件存储底层:文件系统(ext4/xfs/btrfs)管理磁盘块,通过inode记录文件元数据(大小、权限、时间),文件名存在目录块中,文件名与inode映射分离。交互配套工具:终端模拟器(GNOME Terminal、Xshell、iTerm2等),是输入shell指令的载体。根目录 / 是整个文件系统的起点,所有硬盘、分区、外设都挂载到根目录下的子文件夹,无Windows盘符概念。一切皆文件:普通文本、程序、硬件设备、目录、网络接口都被抽象为文件。/bin / /usr/bin :系统基础命令程序。

2026-07-02 17:09:40 239

原创 优快云:SSH协议详解 + Xshell连接Linux虚拟机完整实操

优快云:SSH协议详解 + Xshell连接Linux虚拟机完整实操

2026-07-01 14:22:56 231

原创 【无标题】

虚拟机(VM,Virtual Machine)是通过虚拟化软件(VMware Workstation、VirtualBox),在Windows/macOS真机上虚拟出一台独立电脑,拥有虚拟CPU、内存、硬盘、网卡,和真机完全隔离。Linux仅指系统内核,厂商在内核基础上搭配桌面软件、驱动、工具包,打包成完整发行版(日常说的Ubuntu、CentOS、Deepin都属于Linux发行版)。稳定安全、占用资源低、无版权收费、开发环境适配性强,后端开发、嵌入式、云计算领域几乎全部基于Linux。

2026-06-29 16:51:43 243

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除