- 博客(7)
- 收藏
- 关注
原创 HashMap 深度漫游:从入门到源码,一篇博客全吃透
在日常编程中,我们经常需要存储和快速查找成对的“键(Key)”和“值(Value)”。例如,根据用户 ID 查找用户信息,根据单词查找其定义,或者缓存计算结果。虽然数组和链表也能完成类似任务,但当数据量变大时,它们的效率往往会急剧下降(查找需要 O(n) 时间)。这时,哈希表(Hash Table) 就闪亮登场了!本文将带您从基础概念到源码实现,全面掌握Java哈希表技术。一、
2025-07-14 20:36:48
623
原创 Java随机数生成全攻略:从基础到安全应用
本文系统介绍了Java中5种随机数生成方法:1.Math.random()简单易用但功能有限;2.Random类提供多种数据类型生成;3.ThreadLocalRandom针对多线程优化;4.SecureRandom满足加密安全需求;5.SplittableRandom专为并行计算设计。文章通过代码示例展示了各方法的使用方式,并用表格对比了它们的性能、安全性和适用场景,帮助开发者根据实际需求选择合适的随机数生成方案。
2025-07-10 15:41:45
298
原创 [特殊字符]征服蓝桥杯:排序算法核心考点深度剖析----附逆序对、第k大元素等高频题代码模板
为什么排序算法是蓝桥杯的核心考点?在蓝桥杯竞赛中,排序算法不仅是直接考查点(如求第k大元素、逆序对数量),更是解决贪心、动态规划等题型的底层工具。据统计,近5年C++赛道中约30%的题目需用到排序或变种思想。本文将深入剖析高频排序算法及其竞赛应用,提供可直接套用的代码模板,助你快速突破算法难关!一、排序算法核心知识图谱1. 算法分类与性能对比算法平均时间复杂度是否稳定适用场景选择排序O(n²)不稳定数据量小对空间有严格要求插入排序O(n²)稳定数据量小或中等规模冒泡排序。
2025-02-26 14:28:49
604
1
原创 高精度乘法
今天要和大家分享一个编程中的“大杀器”——高精度乘法!无论是处理巨大的数据,还是解决算法竞赛中的难题,高精度乘法都能派上用场。接下来,我会详细解释什么是高精度乘法,并附C++的实现代码。高精度乘法,顾名思义,就是能处理超大数字乘法的算法。在普通的编程环境中,整数类型(如int、long等)都有一个固定的范围。当数字超出这个范围时,就会发生溢出,导致计算结果错误。而高精度乘法算法则能够突破这个限制,让我们能够准确地计算超大数字的乘积。
2024-09-11 10:32:14
1515
原创 高精度加法
当需要处理的数字超过这些类型的最大值时,就需要使用特殊的技术来处理,这就是所谓的“高精度计算”。由此,高精度加法通常通过模拟手工加法的实现。结果的第i位=(a的第i位+b的第i位+进位)%10,而进位=(a的第i位+b的第i位+上一位的进位)/10。我们需要借助数组来存储每一位数字,并从数组末尾开始逐位相加,这样从低位处理到高位,能避免发生顺序上的错误。1.问题引入:分别在两行内输入两个500位以内的十进制非负整数,求它们的和。,由于我们从低位到高位处理数据,所以进位可以直接加在第i+1位。
2024-09-10 20:22:54
436
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人