ऐप डाउनलोड करें
फ़ोल्डर चुनें और संपादन से पहले सहायक से संबंधित फ़ाइलें पढ़ने को कहें। काम का उद्देश्य और सीमाएँ बताएँ।
क्रमांकित नोडों को अदिश किनारों से असंबद्ध समुच्चयों में समूहित करें। अकेले नोड, दोहराए किनारे और खाली ग्राफ जाँचें तथा जोड़ने से पहले गलत सिरों को अस्वीकार करें।
फ़ोल्डर चुनें और संपादन से पहले सहायक से संबंधित फ़ाइलें पढ़ने को कहें। काम का उद्देश्य और सीमाएँ बताएँ।
संगत endpoint चुनें। उपलब्ध उपकरण और उत्तरों की गुणवत्ता चुने गए मॉडल तथा सर्वर पर निर्भर करती है।
बदलाव और कमांड का आउटपुट देखें। परिणाम स्वीकार करने से पहले प्रोजेक्ट की जाँच चलाएँ; बनाया गया कोड अपने आप परीक्षण किया हुआ नहीं होता।
वास्तविक व्यवहार की अपेक्षित परिणाम से तुलना करें। जाँच असफल हो तो अगले बदलाव से पहले कारण समझें।
def components(count, edges):
if type(count) is not int or not 0 <= count <= 10000:
raise ValueError("node count")
pairs = list(edges)
for pair in pairs:
if len(pair) != 2 or any(type(v) is not int or not 0 <= v < count for v in pair):
raise ValueError("edge endpoint")
parent = list(range(count))
def find(x):
while parent[x] != x:
parent[x] = parent[parent[x]]
x = parent[x]
return x
for a, b in pairs:
parent[find(b)] = find(a)
groups = {}
for node in range(count): groups.setdefault(find(node), []).append(node)
return sorted(groups.values())लागू करने से पहले समीक्षा करें. बदलाव और कमांड का आउटपुट देखें। परिणाम स्वीकार करने से पहले प्रोजेक्ट की जाँच चलाएँ; बनाया गया कोड अपने आप परीक्षण किया हुआ नहीं होता।