「iOS 100天学习计划」第十六天~第十八天(算法学习)

2016-02-26

第十六天,利用深度优先(DFS)和广度优先搜索(BFS)。

算法对无向图进行遍历;使用DFS对地图进行最短路径搜索.BFS很适用于所有边权值相同的情况

:(还了解了图论中的Adjacency Matrix图的邻接矩阵表示法,名字炒鸡难记


2016-02-28

第十七天,学习了Floyd-Warshall最短路径算法,该算法不能解决法带走负权回路的图。利用了动态规划思想

学习了Dijkstra算法,解决单源最短路径问题。是一种基于贪心策略的算法,但时间复杂度更高

代码实现比Floyd更复杂。利用数组而不是指针链表实现邻接表,更好的扩张性


2016-03-15

第十八天,学习了Bellman-Ford算法,解决带负权边的路径问题。并且使用队列优化该算法

但是非优化的算法实现更易于理解(不在乎效率,可以使用Floyd实现更简单

我测试了一下,Bellman-Ford队列优化后只快了百分之4,但最坏情况和没有优化的时间复杂度是一样的啊(测试机MacBook Air

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值