Skip to main content

8 docs tagged with "GESP C++五级"

View all tags

第41章 初等数论

初等数论是研究整数性质的数学分支,其内容在程序设计中有着广泛应用,如密码学、算法优化、数据校验等。

第42章 数组模拟高精度计算

在C和C++语言中,基本数据类型(如int、long long)能表示的整数范围有限,例如int型通常最大为2147483647,当需要处理超出此范围的大整数(如几百位甚至几千位的整数)时,就需要借助数组来模拟高精度计算。数组模拟高精度计算的核心思想是用数组的每个元素存储大整数的一位数字,通过模拟人工计算的方式实现加、减、乘、除等运算。

第43章 动态数组

动态数组(Dynamic Array)是一种在程序运行时可以灵活调整大小的数组结构,它克服了静态数组编译时确定大小)的局限性,能够根据实际需求动态分配和释放内存。动态数组是处理不确定规模数据的重要工具。

第44章 线性表和链表

线性表是计算机科学中最基础、最常用的数据结构之一,它是由n个具有相同特性的数据元素组成的有限序列。

第45章 递归算法

递归(Recursion)指在函数的定义中直接或间接调用函数自身的过程。它通过将复杂大问题拆解为结构相同、规模更小的子问题,先求解小规模基础情况,再反向推导原问题答案。

第46章 二分查找

二分查找(Binary Search)又称折半搜索,是一种高效的查找算法,仅适用于有序序列,核心思路不断折半缩小搜索区间,将线性$O(n)$查找优化为对数$O(\log n)$级别。

第47章 贪心算法

贪心算法(Greedy Algorithm)是一种通过在每一步选择中采取局部最优策略,逐步构造完整解,期望最终得到全局最优解的算法思想。贪心只依据当前状态做最优决策,不考虑后续长远影响。

第48章 分治算法

分治算法(Divide and Conquer)核心思想为分而治之:将一个规模大、难以直接求解的原问题,拆分为若干结构相同、规模更小的独立子问题;递归求解所有子问题后,再将子问题的解合并,得到原问题的最终答案。