-1
我具有陣列2D陣列A[n][k]
其中n,k<=1000
和陣列cost[n][n]
,我喜歡這個 執行操作(最初所有元件在A
是0
)範圍最小值查詢
for(int i=1; i<=n; i++) {
for(int j=0; j<min(k,i); j++) {
int min = Max_Value;
for(int r=0; r<i; r++) {
min = min(min,A[r][j]+cost[r][i]);
}
A[i][j+1]=min
}
}
時間的我的代碼複雜度爲O(N ķ N)我可以將其降低到O(N ķ logN)的,我不知道怎麼用線段樹這一點。對於代碼,你可以看到它是動態編程。
1)X,在你的要求Ÿ問題使得複雜的正確回答。請解釋你的問題的含義。乍一看,您正在尋找加權圖中的最小距離。 2)如果成本限制與其兼容,則可以使用Dijkstra算法。 –