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