跳到主要内容
极客日志极客日志
首页博客AI提示词GitHub精选代理工具
搜索
|注册
重置
编程语言 / C

标签

全部标签AIjavaNode.jsNuctPayPPT制作React NativeRNSaaSWeChat大前端算法

分类

全部分类
编程语言
PythonJavaScriptTypeScriptJavaKotlinGo / GolangRustC++CC#F#PHPRubySwiftObjective-CScalaClojureElixirErlangHaskellDartLuaPerlRJuliaMATLAB / OctaveSQLShell / BashPowerShellHTML / CSSZigNimCrystalGroovyVisual Basic .NETSolidity汇编

排序

最新更新最新发布最多浏览最多点赞
数据结构:单链表的概念、结构与实现
C算法

数据结构:单链表的概念、结构与实现

链表是一种物理存储结构上非连续、非顺序的线性表,通过指针链接次序实现逻辑顺序。介绍单链表的基本概念、结点结构(数据 + 指针)、性质及打印实现方法。对比顺序表,链表无需增容,按需申请空间。内容涵盖单链表分类、头文件与实现文件的组织方式,以及完整的 C 语言代码示例,帮助理解链表的内存分配与遍历逻辑。

ApiHolic发布于 2026/3/16更新于 2026/4/2310 浏览0 点赞约 6 分钟阅读
归并排序非递归实现指南
C算法

归并排序非递归实现指南

归并排序非递归实现采用自底向上策略,通过步长 gap 控制子数组合并。初始 gap 为 1,两两合并有序子序列,随后 gap 翻倍直至覆盖整个数组。相比递归版本,非递归无需栈空间且逻辑固定,但需手动处理边界越界情况,如右区间超出数组长度时需修正 end2。核心流程包括初始化临时数组、循环合并及数据回写,时间复杂度 O(nlogn),空间复杂度 O(n)。

落日余晖发布于 2026/3/16更新于 2026/4/212 浏览0 点赞约 17 分钟阅读
数据结构:栈和队列的定义与实现
C算法

数据结构:栈和队列的定义与实现

栈是一种后进先出的线性表,仅允许在栈顶进行插入和删除操作,通常使用顺序表实现以方便动态增容。队列是先进先出的线性表,在队尾插入、队头删除,为避免数据移动效率问题常采用单链表实现。文章详细阐述了两种结构的定义、特点,并给出了基于 C 语言的完整接口声明与核心函数实现代码,涵盖初始化、入栈/入队、出栈/出队、获取栈顶/队头元素及销毁等关键功能。

微码行者发布于 2026/3/16更新于 2026/4/227 浏览1 点赞约 10 分钟阅读
C 语言快速排序算法详解与优化实现
C算法

C 语言快速排序算法详解与优化实现

快速排序是常用的高效排序算法。文章详细讲解了基于 Hoare 分区的快速排序实现,包括基准值选取、左右指针交换及区间划分逻辑。针对最坏情况提出三数取中优化,避免极端数据导致性能下降。针对小区间递归效率低的问题,引入堆排序进行优化。最后展示了使用栈模拟递归的非递归实现方案,有效防止栈溢出风险。涵盖基础原理、代码优化及完整 C 语言实现示例。

晚风告白发布于 2026/3/16更新于 2026/4/213 浏览0 点赞约 23 分钟阅读
Linux 进程替换原理:从 fork 到 exec 详解
C

Linux 进程替换原理:从 fork 到 exec 详解

Linux 进程替换指用新可执行程序完全替换当前进程的代码、数据和堆栈,PID 保持不变。核心流程为 fork 创建子进程后调用 exec 系列函数。exec 不会触发写时拷贝,因它丢弃原有地址空间。CPU 通过 ELF 文件头 e_entry 字段获取入口地址。exec 系列库函数封装了底层 execve 系统调用,支持不同参数传递方式(可变参数或数组)。父进程可通过 fork 继承环境变量,或使用 execle/execvpe 显式…

SqlMaster发布于 2026/3/16更新于 2026/4/231 浏览0 点赞约 28 分钟阅读
Linux 文件操作核心:缓冲区机制与文件描述符原理
C

Linux 文件操作核心:缓冲区机制与文件描述符原理

Linux 文件操作中,C 标准库通过用户级缓冲区减少系统调用次数以提升效率。解析文件描述符与缓冲区的交互机制,对比 printf/fwrite/write 的输出差异及刷新策略(无缓冲、行缓冲、全缓冲)。通过模拟实现简易 C 文件库,展示_fopen、_fwrite、_fclose 等函数如何封装 open/write/close 系统调用,阐明进程退出时缓冲区刷新的关键逻辑。

灭霸发布于 2026/3/15更新于 2026/4/219 浏览1 点赞约 35 分钟阅读
数据结构入门:带头双向循环链表实现
C算法

数据结构入门:带头双向循环链表实现

带头双向循环链表的数据结构定义及核心接口实现,包括节点创建、初始化、销毁、打印、判空、头尾插删、查找及指定位置插入删除。通过对比顺序表与链表特性,阐述了链表在频繁增删场景下的优势,并提供了完整的 C 语言代码示例(List.h 与 List.c),帮助理解双链表指针操作逻辑。

人间失格发布于 2026/3/15更新于 2026/4/218 浏览1 点赞约 20 分钟阅读
Linux 进程等待机制:wait 与 waitpid 详解及僵尸进程治理
C

Linux 进程等待机制:wait 与 waitpid 详解及僵尸进程治理

Linux 进程管理中,子进程退出后若未被父进程回收会形成僵尸进程,占用系统资源。本文详解 wait 和 waitpid 系统调用的核心作用,包括阻塞与非阻塞模式的区别、status 参数的位图解析方法以及宏的使用技巧。通过实际代码示例,展示如何正确获取子进程退出状态、处理异常场景,并介绍非阻塞轮询在并发任务管理中的应用,帮助开发者构建健壮的进程控制逻辑。

宁静发布于 2026/3/15更新于 2026/4/230 浏览0 点赞约 35 分钟阅读
数据结构:栈与队列的实现及应用
C算法

数据结构:栈与队列的实现及应用

栈(后进先出)和队列(先进先出)的基本概念及结构特点。详细阐述了使用数组实现栈和使用链表实现队列的 C 语言代码逻辑,包括初始化、增删改查及销毁操作。此外,通过括号匹配问题演示了栈的实际应用,并提供了使用两个队列模拟栈结构的具体算法实现方案。

字节跳动发布于 2026/3/15更新于 2026/4/227 浏览1 点赞约 21 分钟阅读
递归算法:二叉树遍历的核心实现
C算法

递归算法:二叉树遍历的核心实现

递归算法用于解决二叉树相关经典问题。涵盖单值二叉树判断、两树是否相同、子树匹配及对称性检测。核心思路利用递归函数比较节点值与结构,时间复杂度通常为 O(N)。代码基于 C 语言实现,包含详细逻辑分析与示例。

刀狂发布于 2026/3/15更新于 2026/4/231 浏览0 点赞约 10 分钟阅读
数据结构:八种常见排序算法
C算法

数据结构:八种常见排序算法

八种常见排序算法涵盖插入排序、希尔排序、选择排序、堆排序、冒泡排序、快速排序、归并排序及计数排序。内容包含各算法基本思想、C 语言代码实现、时间复杂度与空间复杂度分析、稳定性对比。重点解析快速排序的 Hoare、挖坑法、Lomuto 分区策略及非递归实现,归并排序分治逻辑,以及计数排序适用场景。适合数据结构学习与算法性能评估参考。

萤火微光发布于 2026/3/15更新于 2026/4/213 浏览0 点赞约 39 分钟阅读
C算法

动态规划:01 背包问题详解

动态规划解决 01 背包问题,核心在于状态定义与转移方程。文章详细对比了二维数组与一维滚动数组的实现差异,解释了为何一维数组需逆序遍历以避免重复选择。通过携带研究材料、砝码称重、分组砝码组合及装箱问题四个实例,演示了不同场景下的 DP 建模方法。包括如何处理物品价值与体积相等的情况,以及天平称重中砝码可放两侧的逻辑推导。最终提供完整的 C 语言代码示例,涵盖内存分配、输入输出及空间优化技巧。

独立开发者发布于 2026/3/15更新于 2026/4/2210 浏览1 点赞约 44 分钟阅读
C算法

Linux 6.19 ARM64 Crypto SM3 哈希子模块源码分析

Linux 6.19 ARM64 架构下的 SM3 哈希子模块源码分析。涵盖 CE 硬件加速与 NEON SIMD 两种实现方式,包含专用指令宏定义、轮函数逻辑、消息扩展及填充处理。通过策略模式、工厂模式和适配器模式设计,支持多核并行与缓存优化。涉及侧信道攻击防护、密钥安全及硬件故障检测机制。提供性能监控框架与未来扩展方向,是国密算法在 ARM64 平台高效实现的关键组件。

氛围发布于 2026/3/15更新于 2026/4/219 浏览2 点赞约 70 分钟阅读
操作系统进程状态核心逻辑与 Linux 实现
C算法

操作系统进程状态核心逻辑与 Linux 实现

操作系统进程状态管理机制调控程序生命周期,涵盖运行、阻塞、挂起等基础状态。通过 PCB 结构体与不同队列间的移动实现状态切换,涉及调度器与设备管理协同。Linux 内核定义了 R、S、D、Z、T 等具体状态,分别对应运行、可中断睡眠、不可中断睡眠、暂停及僵尸进程。文章结合 task_struct 源码结构与 ps 命令实例,解析状态转换流程、僵尸进程成因及排查方法,阐明操作系统对有限资源与无限需求的动态平衡逻辑。

MongoKing发布于 2026/3/15更新于 2026/4/2211 浏览2 点赞约 15 分钟阅读
链表面试基础:快慢指针与哨兵节点的实战应用
C算法

链表面试基础:快慢指针与哨兵节点的实战应用

链表是数据结构面试中的高频考点。针对中间结点查找与有序链表合并问题,分别采用快慢指针与哨兵节点策略优化解法。前者避免二次遍历,后者简化边界判断。代码基于 C 语言实现,注重内存管理与逻辑清晰性,适合初学者夯实基础并应对面试场景。

FrontendX发布于 2026/3/15更新于 2026/4/230 浏览0 点赞约 5 分钟阅读
数据结构指南:堆
C算法

数据结构指南:堆

堆是基于完全二叉树的数据结构,分为大顶堆和小顶堆。通过数组存储实现,支持向上调整和向下调整算法维护堆性质。本文介绍了堆的定义、分类、性质及 C 语言实现细节,包括初始化、插入、删除、取堆顶等操作的时间复杂度分析。

佛系玩家发布于 2026/3/15更新于 2026/4/231 浏览0 点赞约 31 分钟阅读
Linux 网络基础:TCP/IP 协议栈与分层模型解析
C

Linux 网络基础:TCP/IP 协议栈与分层模型解析

Linux 网络基础涉及 TCP/IP 协议栈与分层模型解析。文章从计算机网络发展背景入手,阐述计算机间协作需求引出网络协议概念。重点解析协议分层思想,对比 OSI 七层模型与工程落地的 TCP/IP 五层模型。深入探讨 TCP/IP 协议与操作系统的关系,说明协议栈在系统中的实现方式。讲解局域网通信原理及 MAC 地址作用,分析数据封装与解包过程,区分数据帧、数据报与数据段。最后通过跨网络传输场景,阐明 IP 地址与 MAC 地址在路…

魔尊发布于 2026/3/15更新于 2026/4/231 浏览0 点赞约 20 分钟阅读
深入探究 Linux 设备树
C

深入探究 Linux 设备树

设备树用于解决 ARM 架构下硬件描述碎片化问题,替代了硬编码的 board file 模式。通过 DTS 源码编译为 DTB 二进制文件,由 Bootloader 传入内核。内核解析 DTB 生成 device_node 并转换为 platform_device,实现驱动与硬件的匹配。驱动通过 of_系列函数读取设备树中的标准资源(reg, interrupts)及自定义属性。设备树使内核镜像能支持多种硬件,提升了可维护性。

协议工匠发布于 2026/3/15更新于 2026/4/2212 浏览3 点赞约 13 分钟阅读
常见时间复杂度与空间复杂度解析
C算法

常见时间复杂度与空间复杂度解析

算法复杂度主要包含时间与空间两个维度,用于衡量运行快慢与额外空间占用。核心采用大 O 渐进表示法,保留最高阶项并去除低阶项及常数系数。文中详细列举了常数阶、线性阶、平方阶及对数阶的推导过程,并通过 C 语言代码示例演示了 Func1 至 Func5 的复杂度计算。针对递归函数,分析了单递归与双递归的调用次数累加规则。空间复杂度部分以冒泡排序为例,说明栈帧确定后仅关注显式申请的额外空间,指出嵌入式场景更需重视空间开销。

小熊软糖发布于 2026/3/15更新于 2026/4/211 浏览0 点赞约 11 分钟阅读
C大前端算法

MetaRTC 跨平台 WebRTC SDK 开发入门指南

MetaRTC 是一款基于纯 C 语言实现的跨平台 WebRTC SDK,适用于嵌入式及物联网场景。文章解析了其模块化架构、核心组件功能及多平台编译环境搭建方法。通过配置文件详解与 C/C++ 代码示例,展示了音视频编解码、网络传输特性及 API 调用流程,并提供常见问题解决方案与进阶开发建议。

墨染流年发布于 2026/3/15更新于 2026/4/2211 浏览4 点赞约 11 分钟阅读
上一页下一页