將連接著當(dāng)前頂點(diǎn)的下層頂點(diǎn)輸出,并且將其存入數(shù)組(或棧),當(dāng)遍歷輸出完以后,再對棧中存在的頂點(diǎn)進(jìn)行遍歷。
2017-08-29
memset函數(shù)需要導(dǎo)入頭文件#include<memory.h>才能使用。。。
2017-08-28
為啥這個(gè)地方html會(huì)自動(dòng)切換到flash。。。。。
2017-08-28
普利姆算法有bug,沒有考慮到加邊后成環(huán)的細(xì)節(jié)排除
2017-08-27
@nullundefine "回答這位同學(xué),獲取最小邊之前,會(huì)把待選邊放到集合里面,而把邊放到待選邊集合里面的條件就是另外一個(gè)頂點(diǎn)不能是訪問過的,如果訪問過的,就continue不放待選邊里面,就排除了環(huán)的情況。"
反問一下如果是先加入待選邊然后在訪問的另外一個(gè)點(diǎn)呢 eg:點(diǎn)A 待選邊A-B,A-C,A-D --->選A-C 待選邊加入 C-B,C-E ---->選C-B 不增加待選邊---->這個(gè)時(shí)候選A-B 也沒有任何限制吧 確實(shí)也成環(huán)了
反問一下如果是先加入待選邊然后在訪問的另外一個(gè)點(diǎn)呢 eg:點(diǎn)A 待選邊A-B,A-C,A-D --->選A-C 待選邊加入 C-B,C-E ---->選C-B 不增加待選邊---->這個(gè)時(shí)候選A-B 也沒有任何限制吧 確實(shí)也成環(huán)了
2017-08-11
@醉獨(dú)醒“除了邊沒有被訪問過這個(gè)條件外,是不是還要考慮兩個(gè)頂點(diǎn)是不是都被訪問過。例如:A-B的權(quán)值為2時(shí),不考慮兩個(gè)頂點(diǎn)是否都被訪問過的話,A、B、F就成了一個(gè)環(huán),明顯不對“
回答這位同學(xué),獲取最小邊之前,會(huì)把待選邊放到集合里面,而把邊放到待選邊集合里面的條件就是另外一個(gè)頂點(diǎn)不能是訪問過的,如果訪問過的,就continue不放待選邊里面,就排除了環(huán)的情況。
回答這位同學(xué),獲取最小邊之前,會(huì)把待選邊放到集合里面,而把邊放到待選邊集合里面的條件就是另外一個(gè)頂點(diǎn)不能是訪問過的,如果訪問過的,就continue不放待選邊里面,就排除了環(huán)的情況。
2017-08-10
這里有很多要優(yōu)化的,在這里做了沒有最小邊的判斷返回了-1,返回之后prim算法沒有對其進(jìn)行處理。另外,獲取最小邊的兩個(gè)循環(huán)完全可以合在一個(gè)。
2017-08-10