学习日记6
来源:互联网 发布:工业大数据 智能制造 编辑:程序博客网 时间:2024/05/24 03:56
今天中午做了一下最短路径的题,用的弗洛伊德算法,这个题是求把所有的点都连接在一起后的最小值,刚开始,我想的是用并查集做,因为把所有点用最短的路连起来就是树,但是这个题是双向的,是有向的,两个点互相走的路径不一样,所以适合无向图的最小生成树算法就不行了,要用最短路径算法弗洛伊德,弗洛伊德之后算出了各个点之间的最小值,然后从一个点出发,找出最大值,就是所有点连通的最大值(除非不连通),以所有的点为起点找出最大值后,再取最小值,就是全部联通的最小值了。
在中午最后还做了一道dfs题,这道题也是一道走无边界的迷宫(当然出了边界就算输),名字好像是打冰球。这道题和普通迷宫题的不同在于,你向一个方向走了,就不能停下了,直到撞了墙(墙被撞了,下一回合就会消失),这算是走了一步,读起来很有趣,做起来就不好了,一直错,中午没睡觉都没调试好,后来看了题解,才发现问题,并改对。
下午又做了两道弗洛伊德的最短路径的问题,这两道都是关于钱币兑换的利率的题,当然算法也都是一样的,都是弗洛伊德,第一道利率的题,只需要把利率弗洛伊德完,然后看看所有的兑换利率有没有大于1的就可以解决了,但是第二道是有本金的,而且还有佣金,也是算赚钱了没有,这道题略微复杂一点,弗洛伊德本来求负权回路,这里是求得正权回路,其实和第一道也差不多,第一道也是一个正权回路,第二道利率的题还参考了大佬的题解,修改过程才过。
6天结束了,可还有几道题没做,希望越做越熟练,慢慢成长。
阅读全文
0 0
- 黑马学习日记6
- Android学习日记(6)
- Caffe学习日记6
- CUDA学习日记6
- TensorFlow学习日记6
- 学习日记6
- perl学习日记6哈希
- 黑马程序员-学习日记6
- python学习日记(6)
- Java菜鸟学习日记6
- web前端学习日记6
- 2017/11/6 学习日记
- 学习日记
- 学习日记
- 学习日记
- 学习日记
- 学习日记
- 学习日记
- Java初学者必看2
- java二进制正数和负数取反
- 模板的分离编译
- C/C++中如何使用typedef给函数指针取别名使其更具可读性
- gdb加载python脚本的方法
- 学习日记6
- 写一个函数满足:给定一个int list a,满足a[i+1]>=a[i],给定int key,找出list a中第一个大于等于key的元素的index,无满足要求的元素则返回-1.
- 数据库优化策略小结
- POJ
- Python 常用技巧(待续)
- POJ 3650 The Seven Percent Solution
- 解决点击edittext时有时无法弹出软键盘的问题
- 算法——冒泡排序
- 开此博客记录自己的学习笔记