自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(5)
  • 收藏
  • 关注

原创 AVL树的模拟实现

AVL树得名于它的发明者G.M.Adelson-Velsky和E.M.Landis是两个前苏联的科学家,他们在1962 年的论文《Analgorithmfortheorganizationofinformation》中发表了它。

2025-06-15 20:52:46 950

原创 深入STL之set_map初识

本文摘要:文章详细介绍了C++中的关联式容器set和map。set是基于红黑树的key结构容器,map则是key/value结构。首先区分了序列式容器和关联式容器的概念,然后重点讲解了pair类及其使用。通过对set的insert、find、erase、count等接口的模拟实现,展示了其操作方法,并比较了set和multiset的区别。最后解析了map特有的[]操作符底层实现原理,说明其通过insert返回pair对象来访问value的特性。文章通过具体代码示例,帮助读者深入理解这两种重要容器的使用方式和

2025-06-01 16:53:37 730

原创 C++二叉搜索树的模拟实现

二叉搜索树(BST)是一种特殊的二叉树,其左子树的所有节点值小于根节点,右子树的所有节点值大于根节点。BST的主要应用场景是高效搜索,其搜索时间复杂度为O(log n),适用于大规模数据的快速查找。BST支持插入、查找和删除操作,但不支持修改节点值,以免破坏树的结构。BST的变种如AVL树和红黑树进一步优化了平衡性,提升了查询效率。BST的典型应用包括停车场管理系统、拼写检查、词典翻译和单词统计等。通过模拟实现BST,可以更好地理解其插入、查找和删除操作的逻辑。

2025-05-20 15:11:42 789

原创 深入学习C语言之编译链接

C语言程序的执行涉及翻译环境和运行环境。翻译环境将源代码转换为可执行程序,包括预处理、编译、汇编和链接四个步骤。预处理处理宏定义和头文件,编译进行词法、语法和语义分析生成汇编代码,汇编将汇编代码转换为机器指令,链接解决多文件间的调用问题。运行环境负责程序的加载和执行,包括内存分配、堆栈管理和程序终止。这两个环境共同确保C语言程序从源代码到最终执行的完整流程。

2025-05-17 14:02:14 637

原创 算法学习之路——快慢指针

Floyd判圈算法,又称龟兔赛跑算法,是一种用于检测链表中是否存在环的算法。该算法通过设置两个指针,一个快指针(兔子)和一个慢指针(乌龟),在链表中移动。如果链表无环,快指针将到达链表尾部;如果有环,快指针最终会追上慢指针,证明存在环。算法还提供了找到环入口的方法,即让两个指针以相同速度移动,再次相遇的点即为环的入口。代码实现中,通过不断移动快慢指针,直到它们相遇或快指针到达链表尾部,来判断链表是否带环。此算法简单高效,广泛应用于链表环检测问题。

2025-05-15 22:05:38 538 2

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除