假如現在國家要進行一項工程,需要將圖中9個城市用某種特殊纜線連接(只要任意兩個城市之間都有至少一條通路即可,例如「北京」和「貴陽」,可以通過「北京」——「鄭州」——「株洲」——「貴陽」連接起來)。
圖中顯示的是所有允許用纜線連接的城市以及連接的成本如圖所示。
現在我們來討論解決類似問題的方法。
①首先連接整幅圖中成本最小的連接線,也就是「鄭州」——「徐州」。之後把「鄭州」和「徐州」看為一個整體,尋找其他城市中與他們之一相連成本最小的城市,也就是「徐州」——「上海」。然後將三個連接過的城市看為一個整體,找出其他城市與這三個城市之一連接成本最小的城市,也就是「北京」——「鄭州」。就像這樣,直到所有城市都連為一體。
②從每個城市出發,都有若干個允許連接的城市。首先對所有城市,連接它們與從它們出發允許連接的城市中連接成本最小的。例如從「鄭州」出發,要連接「鄭州」——「徐州」;從「貴陽」出發,要連接「貴陽」——「柳州」;從「柳州」出發,也要連接「貴陽」,但是已經連接過,就不用再連接。從「昆明」出發,應該與「貴陽」相連,雖然「貴陽」已經與「柳州」相連,但是仍然需要「昆明」與貴陽相連。如此一來,圖中出現了若干個連為一體的城市集(例如「上海」「徐州」「鄭州」「北京」四個城市被連為一體),然後對於每一個城市集,找出它們與其他城市集之間連接的成本最小線路。例如「上海」「徐州」「鄭州」「北京」四個城市形成的城市集,與圖中剩餘5個城市形成的城市集之間,存在「鄭州」——「成都」,「鄭州」——「株洲」,「上海」——「株洲」。而我們要選擇的是成本最小的「鄭州」——「株洲」。就這樣,直到所有城市連為一體。
上面說的方法①和方法②,都成功找出了圖中的最優解。可是,這兩種方法是否具有普適性,解決任意類似問題呢?
(答案提示中,是一個結論,這個結論是本題的關鍵)