#!/usr/bin/env python3 # -*- coding: utf-8 -*- """ Created on Thu May 30
10:53:38 2019 @author: lg """ import pandas as pd import numpy as np
df1=pd.DataFrame(np.array([[4,5,2]]),index=["A"],columns=['B1','B2','B3'])
df2=pd.DataFrame(np.array([[6,2,5],[5,3,4],[7,5,8]]),index=['B1','B2','B3'],columns=['C1','C2','C3'])
df3=pd.DataFrame(np.array([[4,4],[4,7],[5,2]]),index=['C1','C2','C3'],columns=['D1','D2'])
df4=pd.DataFrame(np.array([[5],[4]]),index=['D1','D2'],columns=['E'])
ll=[df3,df2,df1] ll1=[df1,df2] cv=[] def pp(t,df): mm=df.index f=pd.Series()
g=[] for j in mm: m1=df.loc[j] m2=m1+t m3=m2.sort_values() f[j]=m3[0]
g.append(m3.index[0]) dc=pd.DataFrame() dc['v']=f.values dc['n']=g
dc.index=f.index # print(dc) cv.append(dc) if len(ll1)>0: df=ll1.pop()
t=pp(dc['v'],df) else: return dc t1=df4['E'] h1=pp(t1,df3) for m in
range(len(cv)): xc=cv.pop() x1=xc.sort_values(by='v') print(x1['n'].values[0])
B1 C3 D2
所以最短路线为A B1 C3 D2 E,这个程序有点,问题实际上可能存在多条路线,这个程序只取一条

技术
©2019-2020 Toolsou All rights reserved,
13.解决 git 合并冲突Linux页面置换算法的C语言实现LinkedHashMap基本用法&使用实现简单缓存1190 反转每对括号间的子串 leetcode一个猜数字的小游戏,用JavaScript实现 Chrome OS,对程序员和Windows意味着什么?,互联网营销 网站安全有哪些防护措施?Java集合------LinkedHashMap底层原理 全球第一免费开源ERP Odoo Ubuntu最佳开发环境独家首发分享 如何建设数据安全体系?