logo
publist
写文章

简介

该用户还未填写简介

擅长的技术栈

可提供的服务

暂无可提供的服务

【C++11】(2)从可变参数模板到lambda

本文介绍了C++11中的可变参数模板、类新功能、STL变化、lambda表达式和包装器等特性。可变参数模板支持可变数量和类型的参数,通过参数包扩展实现灵活编程。类新增了默认移动构造/赋值、成员变量缺省值和default/delete控制。STL容器增加了emplace系列接口。lambda表达式简化了匿名函数定义,支持多种捕捉方式。包装器function统一了可调用对象类型,bind可调整参数个数

文章图片
#c++#开发语言
【Linux】理解进程,从这三件事开始:冯诺依曼、操作系统、PCB

本文围绕计算机系统核心概念展开:1. 冯诺依曼体系结构解析了计算机硬件组织方式,强调内存作为CPU与外设间的速度适配器,解释了程序必须加载到内存运行的原因。2. 操作系统部分阐明了其作为管理软件的双重角色:向下管理硬件资源,向上为用户程序提供执行环境,并介绍了系统调用的访问机制。3. 进程概念部分详细说明了进程是PCB数据结构与代码数据的结合体,操作系统通过管理PCB链表来实现进程管理,并深入讲解

文章图片
#服务器#运维#linux
【Linux】深入理解进程:进程状态,进程优先级,进程切换与O(1)调度算法

本文深入探讨了Linux进程管理的核心概念。主要内容包括:1)进程状态(运行、阻塞、挂起、僵尸、孤儿状态)及其转换机制,重点阐述了进程在不同队列间的流动本质;2)进程优先级管理,解释了PRI和NI的关系及调整规则;3)进程切换原理,包括上下文保存和O(1)调度算法实现细节。文章通过源码分析和实例演示,揭示了Linux内核如何通过精巧的数据结构设计(如双向链表、位图等)高效管理进程,确保系统资源合理

文章图片
#linux#运维#服务器
C++继承机制:面向对象编程的基石

本文介绍了C++继承机制的核心概念,包括继承定义(public/protected/private)、基类派生类转换规则、作用域隐藏问题、派生类默认成员函数实现要点。重点分析了菱形继承问题和虚继承解决方案,比较了继承(is-a)与组合(has-a)的差异,指出组合优于继承的设计原则。文章通过大量代码示例详细说明了继承的访问控制变化、成员初始化顺序、静态成员特性等关键知识点,为面向对象编程中的代码复

文章图片
#c++#开发语言
C++数据结构实战:二叉搜索树的核心操作与应用场景

本文详细介绍了二叉搜索树(BST)的概念、基本操作和典型应用。BST是一种具有特定排序性质的二叉树结构,左子树节点值小于等于根节点,右子树节点值大于等于根节点。文章分析了BST的最优和最差性能情况,并详细讲解了插入、查找和删除操作的实现方法,其中删除操作根据四种不同情况采用不同的处理策略。通过C++代码示例展示了key-only和key-value两种模型的实现,前者适用于存在性检查场景(如车牌识

文章图片
#数据结构#c++
C++数据结构:AVL树的插入、旋转与平衡全过程

AVL树是一种自平衡二叉搜索树,其核心特点是保持任意节点的左右子树高度差不超过1。本文详细介绍了AVL树的概念、结构实现和关键操作:插入节点时的平衡因子更新机制,以及四种旋转操作(右单旋、左单旋、左右双旋、右左双旋)的实现原理与具体代码。文章还包含了AVL树的查找功能和平衡检测方法,通过高度差验证树的平衡性。完整代码实现了AVL树的核心功能,包括节点插入、旋转调整和平衡检查。AVL树通过严格的平衡

文章图片
#数据结构#c++
C++红黑树:理论与实践相结合的平衡艺术

红黑树是一种自平衡二叉搜索树,通过节点颜色约束(红/黑)和旋转操作维持平衡。其核心规则包括:根节点为黑、红色节点不能连续、任意路径黑节点数相同。这些规则确保最长路径不超过最短路径的两倍,保证操作效率为O(logN)。实现时,插入操作需处理三种情况(变色、单旋+变色、双旋+变色)以维持平衡。验证红黑树需检查四点规则是否满足。完整代码实现了插入、查找、旋转等核心功能,并通过递归验证树的平衡性。

文章图片
#c++#数据结构#开发语言
C++数据结构深度探索:哈希表的实现与优化

本文系统介绍了哈希技术及其衍生数据结构。首先阐述了哈希表的基本概念,包括直接定址法、哈希冲突和负载因子,详细分析了三种哈希函数(除法散列、乘法散列、全域散列)和两种冲突处理方法(开放定址法和链地址法),并提供了完整的C++实现代码。随后讲解了位图的设计原理和应用场景,如海量数据查找和统计。最后介绍了布隆过滤器,说明其通过多哈希函数降低误判率的机制,并给出实现代码。全文深入浅出地讲解了这些高效数据结

文章图片
#数据结构#散列表#哈希算法 +1
Linux开发工具入门(一):开发三板斧(包管理器,vim,gcc/g++) 以及入门理解动静态库

本篇是 Linux 开发工具入门指南,文章围绕“写代码 → 编译 → 运行”这一主线,系统介绍了 Linux 环境下最核心的三类工具:包管理器:以 apt 和 yum 为例,讲解如何一键安装开发环境,并理解其背后的依赖解决机制。编辑器 vim:从模式切换、基本操作到简单配置,让你能在终端里流畅地编写代码。编译器 gcc/g++:通过实际示例演示从源文件到可执行文件的完整过程,并深入讲解预处理、编译

文章图片
#linux#运维#服务器
Linux入门:常用命令实战笔记

本文精选了Linux系统中最实用的基础命令,适合新手快速上手操作。主要内容包括:文件和目录操作命令(pwd、ls、mkdir、touch、cd、rm等)、文件查看命令(cat、more、less、head、tail)、系统信息命令(uname)、查找命令(which、whereis)、文本处理命令(grep)以及压缩解压命令(zip、tar)。文章通过具体示例讲解命令用法,强调Linux&quot

文章图片
#linux
    共 11 条
  • 1
  • 2
  • 请选择