famous हरे और कछुआ विधि का उपयोग करके एक लिंक्ड सूची में चक्र का पता लगाने में समस्या नहीं है।एक लिंक्ड सूची में साइकिल का पता लगाने: संपूर्ण सिद्धांत
हरे & टोर्टोइज़ विधि में हमारे पास 1x और 2x गति में चलने वाले पॉइंटर्स हैं जो यह निर्धारित करने के लिए हैं कि वे मिलते हैं और मुझे विश्वास है कि इसका सबसे प्रभावी तरीका और उस प्रकार की खोज का क्रम ओ (एन) है।
समस्या यह है कि मुझे एक सबूत (साबित करना या अस्वीकार करना) के साथ आना है कि यह संभव है कि चलती गति एक्स (ए टाइम्स एक्स) और बीएक्स (बी टाइम्स एक्स) और ए के दौरान दो पॉइंटर्स हमेशा मिलेंगे बी के बराबर नहीं है। जहां ए बी एक चक्र उपस्थिति के साथ एक लिंक्ड सूची पर काम कर रहे दो यादृच्छिक पूर्णांक हैं।
यह हाल ही में भाग लेने वाले साक्षात्कारों में से एक में पूछा गया था और मैं इसे अपने आप को साबित करने में सक्षम नहीं था कि उपरोक्त संभव है या नहीं। किसी भी मदद की सराहना की।
"इस नए अनुक्रम में एक चक्र है यदि केवल मूल अनुक्रम होता है" - यह गलत है। –
@ एनएम .: उह? एक लिंक्ड सूची के लिए यदि आप प्रत्येक 'x' आइटम पर कदम उठाते हैं तो लूपिंग बैक की संपत्ति बदली नहीं जाती है। या तो आप दोनों मामलों के लिए हमेशा के लिए कदम रखते रहें (एक चक्र है) या आप 'n' या' n/x' चरणों के बाद रुकते हैं (कोई चक्र नहीं है)। बेशक चक्र की लंबाई अनिवार्य रूप से 'के/एक्स' नहीं होने वाली है यदि मूल चक्र लंबाई' के' है ... लेकिन यह तर्क के लिए अप्रासंगिक है। – 6502
क्षमा करें मैं गलत था। यह झूठा नहीं है। मैंने कथन को गलत समझा। –