साइकिल सॉर्ट एक इन-प्लेस सॉर्टिंग एल्गोरिथम है। यह किसी अन्य इन-प्लेस सॉर्टिंग तकनीक के लिए तुलना आधारित सॉर्ट और कुशल भी है। छँटाई कार्यों को करने के लिए यह न्यूनतम संख्या में मेमोरी लिखता है।
साइकिल सॉर्ट तकनीक की जटिलता
- समय जटिलता:O(n^2)
- अंतरिक्ष जटिलता:O(1)
इनपुट और आउटपुट
इनपुट:बिना क्रमबद्ध डेटा की एक सूची:23 63 98 74 20 14 36 45 99 78आउटपुट:छँटाई से पहले सरणी:23 63 98 74 20 14 36 45 99 78 छँटाई के बाद सरणी:14 20 23 36 45 63 74 78 98 99पूर्व>एल्गोरिदम
साइकिलसॉर्ट(सरणी, आकार)इनपुट - डेटा की एक सरणी, और सरणी में कुल संख्या
आउटपुट - क्रमबद्ध सरणी
प्रारंभ के लिए प्रारंभ करें:=0 से n - 2 कुंजी करें:=सरणी [प्रारंभ] स्थान:=i के लिए प्रारंभ करें:=प्रारंभ + 1 से n-1 करें यदि सरणी [i] <कुंजी तो स्थान:=स्थान + 1 किया गया यदि स्थान =प्रारंभ करें तो निचले हिस्से को अनदेखा करें, अगले पुनरावृत्ति के लिए जाएं जबकि कुंजी =सरणी [स्थान] स्थान करें:=स्थान +1 किया गया है यदि स्थान ≠ प्रारंभ करें तो स्थान के साथ सरणी [स्थान] स्वैप करें स्थान स्थान शुरू करें:=i के लिए प्रारंभ करें:=प्रारंभ + 1 से n-1 यदि सरणी [i] <कुंजी तो स्थान:=स्थान +1 किया जाता है जबकि कुंजी =सरणी [स्थान] स्थान:=स्थान +1 यदि कुंजी सरणी [स्थान] स्वैप सरणी [स्थान] और कुंजी हो चुकी हैअंतउदाहरण
#includeनेमस्पेस का उपयोग करके std;void swapping(int &a, int &b) { // a और b int temp की सामग्री को स्वैप करें; अस्थायी =ए; ए =बी; बी =अस्थायी;} शून्य प्रदर्शन (int * सरणी, int आकार) {के लिए (int i =0; i <आकार; i ++) cout <<सरणी [i] <<""; cout < > एन; इंट गिरफ्तारी [एन]; // दिए गए तत्वों की संख्या के साथ एक सरणी बनाएं cout <<"तत्व दर्ज करें:" < > arr[i]; } cout <<"छँटाई से पहले सरणी:"; प्रदर्शन (गिरफ्तारी, एन); साइकिल सॉर्ट (गिरफ्तारी, एन); cout <<"सॉर्ट करने के बाद सरणी:"; प्रदर्शन (गिरफ्तारी, एन);} आउटपुट
तत्वों की संख्या दर्ज करें:10तत्व दर्ज करें:23 63 98 74 20 14 36 45 99 78क्रमबद्ध करने से पहले सरणी:23 63 98 74 20 14 36 45 99 78क्रमबद्ध करने के बाद सरणी:14 20 23 36 45 63 74 78 98 99पूर्व>