कुछ स्यूडोकोड यहाँओ (वी * ई) के बजाय बीएफएस ओ (वी + ई) की जटिलता क्यों है?
v1 से शुरू (मेरी शैली उपेक्षा) (कतारबद्ध):
function BFS(queue Q)
v2 = dequeue Q
enqueue all unvisited connected nodes of v2 into Q
BFS(Q)
end // maybe minor problems here
चूंकि ग्राफ में वी कोने हैं, और ये वी कोने ई किनारों से जुड़े हैं, और विजिटिंग हो रही जुड़े नोड्स (जुड़े हुए किनारों के दौरे के बराबर) आंतरिक पाश में है (बाहरी पाश खुद ही रिकर्सन है), ऐसा लगता है कि जटिलता ओ (वी + ई) की बजाय ओ (वी * ई) होना चाहिए। क्या कोई इसे मेरे लिए समझा सकता है?
बहुत औपचारिकता के बिना बहुत सरल: प्रत्येक edgy बिल्कुल दो बार माना जाता है, और प्रत्येक नोड को एक बार संसाधित किया जाता है, इसलिए जटिलता किनारों की संख्या के साथ-साथ शिखर की संख्या के निरंतर एकाधिक होना चाहिए। –
इसमें चक्रों से बचने के लिए एक तंत्र शामिल है –