链表 发表于 2024-12-08 更新于 2024-12-20 分类于 数据结构 本文字数: 1k 阅读时长 ≈ 1 分钟 链表链表是一种线性数据结构,由一组节点(Node)组成,每个节点通过指针链接到下一个节点。链表可以动态分配内存,适合频繁插入和删除操作的场景。 阅读全文 »
二进制与位运算 发表于 2024-12-06 更新于 2025-01-20 分类于 算法 本文字数: 7.8k 阅读时长 ≈ 7 分钟 二进制与位运算二进制和位运算是计算机科学和编程中非常重要的概念,广泛应用于底层编程、硬件控制、数据加密、图像处理等领域。理解二进制与位运算是掌握计算机系统内部工作原理的基础。 阅读全文 »
滑动窗口 发表于 2024-12-02 分类于 算法 本文字数: 914 阅读时长 ≈ 1 分钟 滑动窗口滑动窗口(Sliding Window)是一种常用的算法技巧,通常用于解决涉及子数组或子序列的最优化问题。它的核心思想是利用两个指针(窗口的左右边界),通过动态调整窗口的大小来遍历数据结构,从而有效地解决问题。 阅读全文 »
排序算法大合集 发表于 2024-11-30 更新于 2024-12-10 分类于 算法 本文字数: 2.8k 阅读时长 ≈ 3 分钟 排序算法排序算法是指将一组元素按某种顺序排列的算法。通常,排序的目的是为了使得数据能够更加高效地查找、检索或处理。排序算法的应用非常广泛,几乎在所有需要数据排列的地方都能找到它的身影,比如:数据库查询、数据分析、图像处理、搜索引擎等 阅读全文 »
前缀和与差分 发表于 2024-11-28 更新于 2025-01-16 分类于 算法 本文字数: 5.3k 阅读时长 ≈ 5 分钟 前缀和前缀和(Prefix Sum)是一个非常常见且高效的算法技巧,用来快速计算数组或矩阵中某个区间的元素和。它的核心思想是通过预处理数组(或矩阵),构建一个新的数组(或矩阵),使得可以在常数时间内计算任意区间的和,从而显著提高效率。 阅读全文 »
二分答案法 发表于 2024-11-25 更新于 2024-11-30 分类于 算法 本文字数: 2.5k 阅读时长 ≈ 2 分钟 二分答案法1、估计最终答案可能范围是什么2、分析问题的答案和给定条件的单调性,大部分的时候只需要用到自然智慧3、建立一个f函数,当答案固定的情况下,判断给定的条件是否达标4、在最终答案可能的范围内不断二分搜索,每次用f函数判断,直到二分结束,找到最合适的答案 阅读全文 »
二分查找法 发表于 2024-11-19 更新于 2025-02-19 分类于 算法 本文字数: 4.9k 阅读时长 ≈ 4 分钟 二分查找法二分查找法(Binary Search)是一种在有序数组或列表中快速查找目标值的算法。它通过将查找范围逐步减半,有效地减少了比较次数,时间复杂度为O(logN),适用于数据量较大且有序的场景。 阅读全文 »
高精度算法 发表于 2024-11-18 更新于 2025-04-10 分类于 算法 本文字数: 6.2k 阅读时长 ≈ 6 分钟 高精度算法高精度算法主要用于处理比普通数据类型更大的数值。普通的数据类型(如 int, long long)无法满足对非常大的数进行计算时的需求。高精度算法通过模拟手工运算过程,逐位处理数字,保证了数值的准确性和有效性。 在高精度运算中,常见的操作包括加法、减法、乘法等,它们通常在字符串中以逐位的方式实现,以应对超过普通数据类型范围的数值。 阅读全文 »