//這裡我給出**。演算法思想。需要自己去理解。我自己就是新手。我掌握就是先會畫圖。理解思想。接著就去理解**。吃透**。
#include
#define infinity 65535
#define maxvex 10
typedef struct
graphtype;
void create(graphtype*);//建立
int located(graphtype*,char);
void dijkstra(graphtype*g,int*p,int*d,int v0);
int main(void)
int located(graphtype*g,char v)
}return k;
}void create(graphtype*g)
printf("親輸入相關聯的頂點及其他們的直接的權值:");
for(i=0;iarcnum;i++)
for(i=0;ivexnum;i++)
return ;
}void dijkstra(graphtype*g,int*p,int*d,int v0)
d[v0]=0;//v0噠v0的最短路徑為0.
final[v0]=1;//v0與v0不需要求最短路徑。
for(v=1;vvexnum;v++)//開始主迴圈。找到除了v0以外的其他點點。
}final[k]=1;//與最近的點點有了最短路徑。
for(w=0;wvexnum;w++)//修正當前最短的距離}}
for(w=0;wvexnum;w++)
printf("《-%c",g->vertexs[v0]);//輸出源節點頂點
printf("\n");}}
return ;
}
資料結構 資料結構演算法
分治法 對於乙個規模為n的問題,若該問題可以容易地解決 比如說規模n較小 則直接解決 否則將其分解為k個規模較小的子問題,這些子問題互相獨立且與原問題形式相同,遞迴地解這些子問題,然後將各子問題的解合併得到原問題的解。動態規劃法 這種演算法也用到了分治思想,它的做法是將問題例項分解為更小的 相似的子...
資料結構與演算法 演算法 演算法和資料結構
資料結構與演算法 演算法 好吧,在這裡,您被優秀或優秀的軟體開發人員所隔開。在這種情況下,我會告訴您一開始或至少在我的情況下,並且我知道大多數時候,對於我認識的大多數人,您會覺得自己是乙個無能的人或白痴。基本上,我怎麼可能不理解這一點,然後您會感到沮喪。在這種情況下,我會告訴您情況並不像您想的那麼糟...
資料結構 演算法
程式設計 資料結構 演算法 演算法的定義 演算法是解決特定問題求解步驟的描述,在計算機中為指令的有限序列,並且每條指令表示乙個或多個操作。演算法的特性 輸入 輸出 0個或多個輸入,至少乙個輸出,輸出可以是列印輸出或者返回乙個值 有 窮 性 演算法在執行有限步驟後,自動結束而不會出現無限迴圈,並且每乙...