- 博客(7)
- 收藏
- 关注
原创 C++竞赛技巧 打表
算法竞赛中"打表"是一种空间换时间的优化技巧,通过预计算并存储结果来提升程序效率。主要适用于两种场景:一是应对重复计算(如斐波那契数列),避免多次计算相同结果;二是降低时间复杂度(如素数判断),将高复杂度计算预处理为O(1)查询。实现时需注意预处理范围,并合理平衡时空开销。这种技巧不仅能优化性能,还能帮助试探数据规律。
2025-10-27 19:10:36
419
原创 C++基础算法 高精度
本文介绍了C++中处理超大数字的高精度算法实现方法。主要内容包括:1)高精度加减法,通过数组存储数字并处理进位;2)高精度乘法,采用双重循环计算各位乘积并进行进位处理;3)高精度除以低精度的除法运算。这些算法通过将大数字转换为字符数组处理,解决了基本数据类型精度不足的问题,适用于需要进行超大数字计算的场景。文中给出了具体代码示例,展示了如何实现这些高精度运算。
2025-10-27 18:53:10
162
原创 C++中的实用函数(字符串)
本文介绍了6个常用C语言字符串处理函数:1.gets()用于带空格输入字符串;2.puts()输出字符串;3.strcat()连接两个字符串;4.strcpy()复制字符串;5.strcmp()比较字符串(按ASCII码);6.strlen()获取字符串长度(不含\0)。这些函数分别实现输入输出、连接、复制、比较和计算长度等基本字符串操作功能。
2025-10-24 11:27:04
165
原创 细节注意(变量值的改变)
本文指出了编程中常见的两个变量修改错误。一是在多重循环中,内层循环修改了外层循环的计数器变量,建议使用临时变量保存原始值;二是在函数多次调用中,前次调用修改了参数值导致后续调用出错,建议先保存函数返回值再用。这两个问题都可通过引入中间变量来避免原始变量被意外修改。
2025-10-08 19:16:12
215
原创 算法基础:异或运算
本文介绍了异或运算的定义、法则及其应用场景。异或运算(⊕/^)对二进制位进行运算,相同为0不同为1。其遵循交换律、结合律等法则,关键特性为X⊕X=0和X⊕0=X。与逻辑或不同,异或具有排他性,强调"互斥"关系。实际应用中,异或运算可用于奇偶校验检测数据传输错误,通过计算校验位确保数据可靠性,如洛谷P1161开灯问题所示。文章还通过成绩奖励和晚餐选择等例子对比了异或与逻辑或的区别。
2025-10-06 12:04:41
393
原创 C++学习day2(数组)
摘要:本文介绍了C++中一维和二维数组的基本用法。一维数组用于存储统一类型的大量数据,通过初始化方式简化变量声明,支持不指定大小的灵活初始化,内存连续且可通过首地址访问。遍历方法包括下标和指针两种方式。二维数组初始化时行数可省略但列数必需,采用嵌套循环遍历。两种数组初始化时未赋值元素默认为0,需注意数据一致性和边界检查。(150字)
2025-10-03 18:43:17
159
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅
1