常规算法解决矩阵内最短路径问题

问题描述:给定一个整数二维数组,要求算出从左上角到右下角的“最短路径”。即每次移动只能取相邻元素,而要保证总路线经过的元素之和最小。


这道题本来可以用动态规划来做,但是本人采用了比较容易理解的常规算法:先创造一个用于计数的二维向量,使其大小与目标矩阵一致,然后,由于求最短路径的情况下,左侧和上面的一行一列必定是取它左边/上面的元素与自身之和,因此先算出这两条边。而对于矩阵内部的元素,其取值无非就是去上面或左边元素中的最小值。这样把整个二维向量填完后,这个向量对应右下角那一格的值即是最短路径的长度。


常规算法解决矩阵内最短路径问题_第1张图片

你可能感兴趣的:(常规算法解决矩阵内最短路径问题)