
算法
文章平均质量分 91
fufufunny
Live in the future, then build what's missing.
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
斐波那契堆的C语言实现
斐波那契堆最早用于图论中的最短路算法Dijstra算法,它是一种特殊的数据结构,在不得不做的时候才调整堆的结构,因此它可以在O(1)的时间内完成大部分操作。本文将介绍斐波那契堆的结构、实现思路以及C语言实现代码。原创 2024-09-22 15:30:56 · 527 阅读 · 0 评论 -
动态规划算法求解最优二叉搜索树
二叉搜索树T是一棵所有结点的元素值互异的二元树,本文将通过最优二叉搜索树问题的求解,带大家进一步熟悉动态规划算法,同时给出C++代码实现。原创 2024-05-07 00:14:45 · 2124 阅读 · 0 评论 -
贪心法确定补水地点
贪心算法是一个简单有趣的算法,它总是做出当前看来最好的选择,每次的局部最优选择最终可以产生整体最优解或整体最优解的近似。本文将介绍如何用贪心法解决补水问题。原创 2024-04-17 22:51:13 · 847 阅读 · 0 评论 -
动态规划算法求解0-1背包
之前我们介绍了如何用动态规划算法求解最长公共子序列问题,本文继续介绍如何用动态规划算法求解0-1背包问题,并使用C++进行代码实现。原创 2024-04-17 21:53:14 · 1137 阅读 · 0 评论 -
动态规划算法求解最长公共子序列
动态规划算法是运筹学中求解多阶段决策问题的经典算法,本文将介绍动态规划算法的基本思想,并介绍如何使用动态规划算法求解最长公共子序列问题。原创 2024-04-16 21:47:46 · 2719 阅读 · 0 评论 -
最坏情况为线性时间的第k大元素
在统计和数据分析中,我们经常会遇到求最大值、最小值、中位数、四分位数、Top K等类似需求,其实它们都属于顺序统计量,本文将对顺序统计量的定义和求解算法进行介绍,重点介绍如何在最差时间复杂度也是线性的情况下求解第k大元素。原创 2024-04-10 21:42:39 · 1039 阅读 · 0 评论 -
Priority Queue实现栈和队列
优先级队列是可基于堆结构进行实现的一种数据结构,在计算机系统中可以用来记录不同作业的相对优先级关系,从而进行作业调度。本文将介绍什么是优先级队列,以及使用优先级队列实现栈和队列的C语言算法。原创 2024-03-24 22:21:59 · 950 阅读 · 0 评论 -
多数问题求解之蒙特卡洛与分治法
多数问题(Majority Problem)是一个有多种求解方法的经典问题,本文将介绍该问题的多种求解方法,重点介绍蒙特卡洛与分治法2种。原创 2024-03-13 23:02:38 · 1066 阅读 · 0 评论 -
RANDOMIZE-IN-PLACE随机排列算法
给定一个长度为n的数组,如何构造出一个随机排列呢?《算法导论》给了我们一个名为RANDOMIZE-IN-PLACE的随机算法,该算法在数组原址上进行排序,时间复杂度为O(n)。下面本文将介绍RANDOMIZE-IN-PLACE的设计思想及代码实现。原创 2024-03-13 04:00:00 · 999 阅读 · 0 评论 -
Strassen矩阵乘法的C语言算法实现
矩阵乘法是高等代数中的重要基本运算,本文将介绍Strassen矩阵乘法的基本原理和用C语言进行算法实现的过程。原创 2024-01-28 00:27:31 · 2590 阅读 · 0 评论 -
分治法求解最大子数组
本文基于算法导论中分治法求解最大子数组的思想,用C语言进行了算法实现。原创 2024-01-23 23:38:36 · 949 阅读 · 0 评论