ACM
文章平均质量分 64
真的卷
重庆邮电大学
展开
-
KMP字符串匹配算法(详细版)
KMP算法是一种高效的字符串匹配算法,它在解决文本匹配问题中表现出色。传统的字符串匹配算法在每次匹配失败时都需要回溯,导致效率低下。KMP算法通过预处理模式串,利用已经匹配的信息,避免了不必要的回溯,从而大大提高了匹配效率。原创 2023-06-06 17:25:19 · 169 阅读 · 0 评论 -
最长上升子序列,最长下降子序列,最长公共子序列
最长上升子序列、最长下降子序列和最长公共子序列是算法中常见的问题。最长上升子序列是指在一个序列中找到最长的子序列,使得子序列中的元素按升序排列。最长下降子序列则是找到最长的子序列,使得子序列中的元素按降序排列。最长公共子序列是在两个序列中找到最长的公共子序列,可以不要求子序列在原序列中连续。原创 2023-06-05 20:14:16 · 135 阅读 · 0 评论 -
最短路算法Dijkstra(详细版)
最短路径算法是图论中的重要主题之一,它解决了在图中找到从一个节点到另一个节点的最短路径的问题。在现实生活和计算机科学中,最短路径算法被广泛应用于路径规划、网络路由、交通优化等领域。 最短路径算法是图论中的经典问题,理解和掌握这些算法对于解决实际问题和设计高效的网络系统至关重要。本博客将为您提供深入的解析、可视化的示例和实际应用的案例,帮助您探索图中最短路的精彩世界。无论您是学习算法的初学者,还是想进一步提升算法知识,本博客都将为您带来启发和帮助。原创 2023-06-02 16:31:24 · 124 阅读 · 0 评论 -
C++ STL库之Stack栈入门
本篇博客详细介绍了C++ STL库中的Stack栈的定义和声明方式,以及Stack栈的基本操作,包括添加元素push()、删除元素pop()、访问栈顶元素top()、获取栈的大小size()、判断栈是否为空empty()。在使用Stack栈时,需要注意一些细节,例如添加和删除元素的方法,获取栈顶元素的方法,判断栈是否为空的方法。掌握了Stack栈的使用方法,可以更好地实现算法和数据结构中的栈操作,提高程序的效率。原创 2023-03-04 09:07:14 · 446 阅读 · 0 评论 -
如何使用C++ STL库中的String
本篇博客详细介绍了如何使用C++ STL库中的String类,并提供了相关代码。具体介绍了String类的定义和初始化、输入输出、添加和删除字符、获取子串、比较字符串、转换类型等多种用法,并给出了相应的建议。在使用String对象时,需要注意对象的长度和容量、查找和替换字符、转换类型的格式正确等问题。String是一个常用的字符串处理工具,掌握了其用法可以方便地进行字符串操作。原创 2023-03-04 08:50:05 · 119 阅读 · 0 评论 -
使用C++STL库中的Vector:代码、比较和介绍
本文介绍了如何在C++中使用Vector这一数据结构,包括相关代码、多种使用方法的比较和详细的介绍。Vector是一个动态数组,具有更大的灵活性和更好的性能。文章列举了常见的操作函数,如添加、删除、访问和排序等,并提醒使用Vector时需要注意的事项。熟练掌握Vector的使用方法可以提高程序的效率和可靠性。原创 2023-03-04 08:37:07 · 787 阅读 · 0 评论 -
ACM-欧拉函数
首先提出欧拉函数phi[x] 的定义:小于x且与x互质的正整数的个数。 例如: phi[12]=4, 因为 1,5,7,11与12互质,特别的phi[1]=1。 欧拉函数的性质: 1 若x 是质数,则phi[xn]=xn−1(x−1)phi[x^n]=x^{n-1}(x-1)phi[xn]=xn−1(x−1) 2 若a|x (表示a 是x的因数) , 则 phi[ax]=a∗phi[x]phi[ax]=a*phi[x]phi[ax]=a∗phi[x] 3 若a, b 互质, 则phi[a]∗phi[b]原创 2021-08-13 18:28:37 · 204 阅读 · 0 评论