首页
AI Coding
数据标注
NEW
沸点
课程
直播
活动
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
登录
注册
算法系列
小刘鸭地下城
创建于2025-07-23
订阅专栏
算法系列是一个专门的教程,依据官方文档整理经常用到的写法和注意事项,删除很少用到的,不用详细阅读文档而创作。
等 1 人订阅
共13篇文章
创建于2025-07-23
订阅专栏
默认顺序
默认顺序
最早发布
最新发布
从零开始掌握二分查找:原理、实现与边界分析
二分查找是一种高效的基于分治的搜索算法。它通过双指针维护一个有序区间,每轮计算中点来缩小一半范围,时间复杂度为O(log n),空间复杂度为O(1)。
深度与广度优先遍历:图的两种核心遍历算法及其实现
图是一种由顶点和边组成的非线性数据结构。它分为有向和无向图,其常见表示方法为邻接矩阵和邻接表,前者适用于稠密图,后者适用于稀疏图。
堆排序与获取TOP-K元素:用堆结构解决经典算法问题
堆是一种完全二叉树,主要分为小顶堆和大顶堆,可用于实现优先队列。支持访问堆顶、入堆和出堆等操作,时间复杂度均为 O log n。
从根到叶:二叉树、二叉搜索树与层序/深度优先遍历全解析
二叉树是一种体现分治逻辑的非线性数据结构,包含完美、完全、满和平衡等类型,常用的遍历方法有层序、前序、中序和后序,通过修改节点指针实现增删操作。
哈希表核心精要:从 O(1) 原理到链式地址与开放寻址
哈希表通过哈希函数将键映射到桶中,实现高效的查询。其主要挑战是处理哈希冲突,常用解决方案包括链式地址和开放寻址,并常以负载因子作为扩容依据。
深入浅出链表:从基础概念到核心操作全面解析
链表是一种通过节点引用连接的线性数据结构,相比数组,其插入与删除高效但访问效率低。它包含单链表、双链表和环形链表等多种类型,是构建栈、队列等高级数据结构的基础。
深入剖析数组和列表:特性、操作与应用场景
数组与链表是核心线性数据结构,数组的优势在连续内存和高速随机访问,而链表则以动态扩容与高效增删见长,二者在实现与应用上各有千秋。
队列与双向队列:从“先进先出”到“灵活操作”
队列是遵循先进先出规则的线性数据结构,支持在队尾入队、在队首出队,其实现方式包括链表和环形数组,典型应用有订单处理和打印机任务等。
深入理解栈:从基础操作到高级应用
栈是遵循先入后出逻辑的线性数据结构,包含入栈和出栈操作,常用实现方式为链表和数组,应用于浏览器后退、程序内存管理和撤销功能。
空间复杂度精解:定义、推算方法与常见类型
空间复杂度衡量算法运行所需内存的增长关系。其统计范围通常为暂存空间与输出空间。推算时,需考虑最坏情况下的内存占用峰值,并特别关注递归调用中累积的栈帧空间,这是空间复杂度的重要来源。
时间复杂度实战:从线性阶、平方阶到对数阶全解析
时间复杂度是算法运行时间与数据规模增长关系的度量。它不依赖测试环境,通过大 O 表示法来渐近估算时间效率。主要推算方法有加法、乘法等法则,旨在找出执行次数最多的代码段。
彻底搞懂数据结构:从线性到非线性的世界
数据结构分线性和非线性,前者如数组链表,后者如树形图,逻辑关系与物理实现各异。数字以补码形式存储,字符编码从 ASCII 到 GBK 再到 UTF-8 不断演进。
数据结构与算法概述
你已经掌握多种日常生活中的实用算法,如查字典的二分查找、整理扑克的插入排序和货币找零的贪心算法数据结构是算法的基石,为算法提供数据存储和操作方法算法则赋予数据结构解决问题的能力,二者关系紧密。