इस लेख में, हम नीचे दिए गए समस्या कथन के समाधान के बारे में जानेंगे।
समस्या कथन - हमें एक लागत मैट्रिक्स और एक स्थिति (एम, एन) दी गई है, हमें (0, 0) से (एम, एन) तक पहुंचने के लिए न्यूनतम लागत पथ की लागत का पता लगाना होगा। प्रत्येक सेल एक सेल से दूसरे सेल में जाने की लागत का प्रतिनिधित्व करता है।
आइए अब नीचे दिए गए कार्यान्वयन में समाधान देखें -
उदाहरण
# dynamic approach R = 3 C = 3 def minCost(cost, m, n): # initialization tc = [[0 for x in range(C)] for x in range(R)] # base case tc[0][0] = cost[0][0] # total cost(tc) array for i in range(1, m + 1): tc[i][0] = tc[i-1][0] + cost[i][0] # tc array for j in range(1, n + 1): tc[0][j] = tc[0][j-1] + cost[0][j] # rest tc array for i in range(1, m + 1): for j in range(1, n + 1): tc[i][j] = min(tc[i-1][j-1], tc[i-1][j], tc[i][j-1]) + cost[i][j] return tc[m][n] # main cost = [[1, 5, 3], [7, 7, 4], [8, 5, 3]] print("Total Cost:",minCost(cost, 2, 1))
आउटपुट
Total Cost: 13
सभी चर स्थानीय दायरे में घोषित किए गए हैं और उनके संदर्भ ऊपर की आकृति में देखे गए हैं।
निष्कर्ष
इस लेख में, हमने सीखा है कि हम न्यूनतम लागत पथ के लिए पायथन प्रोग्राम कैसे बना सकते हैं