logo
publist
写文章

简介

该用户还未填写简介

擅长的技术栈

可提供的服务

暂无可提供的服务

【烧脑算法】单序列双指针:从暴力枚举到高效优化的思维跃迁

本篇博客是对《单序列双指针---基础篇》的补充,主要探讨了更高难度的双指针算法题目。文章通过多个LeetCode题目的解析,展示了双指针在不同场景下的应用,包括相向双指针和同向双指针的使用。通过这些题目的解析,读者可以进一步提升对双指针算法的掌握和应用能力。

文章图片
#算法#数据结构#c++ +3
【烧脑算法】拓扑排序:从“依赖”到“序列”,理解题目中的先后逻

本文介绍了拓扑排序的概念及其在图论中的应用。拓扑排序能将杂乱的数据按照一定的先后顺序排列,适用于解决课程安排、任务调度等问题。文章通过多个力扣题目(如1557、210、2115、2392、802、1591、LCR114、1203等)详细讲解了拓扑排序的实现方法,包括统计入度、构建邻接表、使用队列处理等关键步骤。对于复杂题目(如1203题),还分析了如何处理多层级依赖关系。拓扑排序的通用解题思路:记

文章图片
#算法#leetcode#数据结构 +3
链表(C语言)

用C语言实现数据结构中单链表和双链表的详细介绍

文章图片
#链表#数据结构#c语言 +2
【工具分享】使用VS Code连接远程主机

《VS Code远程开发配置指南》 本文详细介绍了使用VS Code进行远程开发的全流程。帮助用户下载安装VS Code并配置中文界面,然后通过Remote-SSH插件连接远程服务器。内容包括:添加SSH主机、选择服务器环境、输入密码验证等步骤,并配有详细操作图示。针对常见问题"VS Code版本过高导致连接失败",给出了降级解决方案和关闭自动更新设置的方法。最后提醒用户需同步

文章图片
#编辑器#visual studio code
【Linux文件系统】操作系统如何管理存储在外设上的文件

本文介绍了Linux操作系统如何管理未被打开的文件,重点分析了磁盘存储结构和文件系统的工作原理。磁盘作为永久性存储介质,通过CHS寻址定位扇区,操作系统将其抽象为线性LBA地址。文件系统采用分治策略,将磁盘划分为多个Block Group进行管理,每个Block Group包含数据块、inode表、位图等结构。inode存储文件属性和数据块索引,采用直接和间接索引方式支持大文件。Super Blo

文章图片
#linux#运维#服务器 +2
【进程内幕】进程等待:必要性剖析与wait、waitpid等多种方式实操指南

本文介绍了Linux系统中的进程等待机制,重点分析了wait()和waitpid()系统调用的使用与原理。进程等待的主要作用包括:回收僵尸进程防止内存泄漏、获取子进程的退出状态信息、确保父进程正确释放资源。文章详细解析了status参数的底层实现方式,通过32位整型的不同比特位存储进程退出状态和异常信息。waitpid()相比wait()增加了指定子进程PID和非阻塞轮询功能,使父进程可以灵活处理

文章图片
#linux#服务器#编辑器 +2
【进程内幕】进程地址空间:从虚拟到物理的内存寻址

本文深入浅出地剖析了进程地址空间的核心概念。首先通过经典布局示意图说明进程地址空间的组成区域(代码段、栈区、堆区等),并解释32位系统的4GB地址空间限制。重点阐述了进程地址空间的本质是虚拟地址空间,通过mm_struct结构体进行管理,使用页表实现虚拟地址到物理地址的映射。文章详细分析了页表的关键作用:1) 实现写时拷贝机制保证进程独立性;2) 通过权限位防止非法访问;3) 利用有效位处理缺页中

文章图片
#linux#服务器#运维 +2
到底了