0%

背包问题

背包问题(Knapsack Problem)是组合优化中的经典问题之一,在计算机科学、运筹学以及算法竞赛中具有重要地位。其核心思想是,在给定的容量限制下,如何选择物品使得总价值最大化。

阅读全文 »

最短路

最短路问题是图论中的一个经典问题,目标是找到一个图中某个起点到其他所有点或某些特定点的最短路径。最短路径的定义通常是边权和(在加权图中),或者边的数量(在无权图中)。

阅读全文 »

在离散数学中,图(英语:graph)是用于表示物体与物体之间存在某种关系的结构。数学抽象后的“物体”称作节点或顶点(vertex, node, point),节点间的相关关系则称作边。在描绘一张图的时候,通常用一组点或小圆圈表示节点,其间的边则使用直线或曲线。

阅读全文 »

BFS

广度优先搜索算法(英语:Breadth-first search,缩写:BFS),又译作宽度优先搜索,或横向优先搜索,是一种图形搜索算法。简单的说,BFS是从根节点开始,沿着树的宽度遍历树的节点。如果所有节点均被访问,则算法中止。广度优先搜索的实现一般采用open-closed表

阅读全文 »

二叉树

在计算机科学中,二叉树(英语:Binary tree)是每个节点最多只有两个分支(即不存在分支度大于2的节点)的树结构[1]。通常分支被称作“左子树”或“右子树”。二叉树的分支具有左右次序,不能随意颠倒

阅读全文 »

最小生成树

最小生成树(英语:Minimum spanning tree,简称MST)是最小权重生成树(英语:Minimum weight spanning tree)的简称,是一个连通加权无向图中一棵权值最小的生成树

阅读全文 »

贪心

贪心算法(Greedy Algorithm)是一种基于逐步构建解决方案的算法设计思想。它在每一步选择中,都采取当前状态下的局部最优解,以期最终得到问题的全局最优解。贪心算法通常用于解决优化问题,例如最小生成树、最短路径问题和活动选择问题等。

阅读全文 »

递归

递归是一种在程序中解决问题的强大技术,它的核心思想是通过函数调用自身来解决问题。递归通常用于解决可以被分解为更小规模的同类问题的情境

阅读全文 »

DFS

深度优先搜索(Depth-First Search, DFS)是一种用于遍历或搜索树和图的算法。它沿着树或图的每一分支尽可能深入,直到到达叶节点或无法前进时再回溯。

阅读全文 »