算法
大树之下
这个作者很懒,什么都没留下…
展开
-
递归与回溯实际例子(类比汉诺塔)
场景1: 上着数学课,小明突然想问问小红有没有男朋友,可是小红坐在教室的右下角,小明在左上角,相隔天涯,于是写了一张纸条。接着对后桌说:“传给小红。”。后桌拿到后对Ta的后桌说:“传给小红”。这个时候神奇的递归就发生了。 在这个例子中,行为目的是传给小红,终止条件是对象为小红。用伪代码来表达就是。 void transport(int rest) // rest是距离小红还有几个人 { ...原创 2020-03-21 16:08:06 · 446 阅读 · 0 评论 -
最短路算法——理解迪杰斯特拉算法和弗洛伊德算法
首先看看实现代码 简单写写 弗洛伊德算法 int dist[N]; // dist[i]表示起始点到i的距离 int w[iN][N]; // w[i][j]表示i到j的边的权值,如果不相邻,则为无穷大 for(int i = 0;i < n;i++) { for(int j = 0;j < n;j++) { dist[j] = min(dist[j], dist[i] +...原创 2019-09-15 22:55:42 · 1442 阅读 · 0 评论