新聞中心
這篇文章主要介紹了Python路徑在動態(tài)算法中怎么使用,具有一定借鑒價值,需要的朋友可以參考下。希望大家閱讀完這篇文章后大有收獲。下面讓小編帶著大家一起了解一下。
知識只有融合在一起,并且舉一反三才能越學越好。不管是在模塊,還是函數(shù),還是算法中,都能看到路徑的身影。就像路徑在動態(tài)算法中同樣有著出色的運用,今天小編就帶大家一起來學習。
舉例:
一個機器人位于一個 m x n 網(wǎng)格的左上角 (起始點在下圖中標記為“Start” )。
機器人每次只能向下或者向右移動一步。機器人試圖達到網(wǎng)格的右下角(在下圖中標記為“Finish”)。
問總共有多少條不同的路徑?
題目分析:
第一眼看到題目覺得是一個迷宮問題的簡化,所謂簡化是方向限制在向下和向右,并且是一個沒有障礙物的迷宮,因此想到了常用的搜索算法。采取深度搜索優(yōu)先開始遍歷迷宮,統(tǒng)計出總的路徑數(shù)目即可。代碼也比較簡單:
class Solution2: counter = 0 def uniquePaths(self, m, n): """ :type m: int :type n: int :rtype: int """ if m != 1 and n != 1: self.uniquePaths(m - 1, n) self.uniquePaths(m, n - 1) if m == 1 or n == 1: self.counter = self.counter + 1 return
感謝你能夠認真閱讀完這篇文章,希望小編分享Python路徑在動態(tài)算法中怎么使用內(nèi)容對大家有幫助,同時也希望大家多多支持創(chuàng)新互聯(lián)網(wǎng)站建設(shè)公司,,關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,遇到問題就找創(chuàng)新互聯(lián)網(wǎng)站建設(shè)公司,,詳細的解決方法等著你來學習!
分享文章:Python路徑在動態(tài)算法中怎么使用-創(chuàng)新互聯(lián)
標題路徑:http://www.dlmjj.cn/article/dddsop.html