Computer >> कंप्यूटर ट्यूटोरियल >  >> प्रोग्रामिंग >> प्रोग्रामिंग

इंसर्शन सॉर्ट

यह सॉर्टिंग तकनीक कार्ड सॉर्टिंग तकनीक के समान है, दूसरे शब्दों में, हम इंसर्शन सॉर्ट मैकेनिज्म का उपयोग करके कार्ड्स सॉर्ट करते हैं। इस तकनीक के लिए, हम डेटा सेट से एक एलिमेंट चुनते हैं और पिक किए गए एलिमेंट को वापस डेटा सेट में डालने के लिए जगह बनाने के लिए डेटा एलिमेंट्स को शिफ्ट करते हैं।

इंसर्शन सॉर्ट तकनीक की जटिलता

  • टाइम कॉम्प्लेक्सिटी: बेस्ट केस के लिए O(n), औसत और सबसे खराब केस के लिए O(n^2)
  • स्पेस कॉम्प्लेक्सिटी: O(1)

इनपुट और आउटपुट

इनपुट: अनसॉर्टेड लिस्ट: 9 45 23 71 80 55
आउटपुट: सॉर्टिंग से पहले ऐरे: 9 45 23 71 80 55
सॉर्टिंग के बाद ऐरे: 9 23 45 55 71 80

एल्गोरिदम

insertionSort(array, size)

इनपुट: डेटा का एक ऐरे, और ऐरे में कुल संख्या
आउटपुट: सॉर्टेड ऐरे

Begin
    for i := 1 to size - 1 do
        key := array[i]
        j := i
        while j > 0 AND array[j-1] > key do
            array[j] := array[j-1]
            j := j - 1
        done
        array[j] := key
    done
End

उदाहरण

#include <iostream>
using namespace std;

void display(int *array, int size) {
    for(int i = 0; i < size; i++)
        cout << array[i] << " ";
    cout << endl;
}

void insertionSort(int *array, int size) {
    int key, j;
    for(int i = 1; i < size; i++) {
        key = array[i]; // मान लें
        j = i;
        while(j > 0 && array[j-1] > key) {
            array[j] = array[j-1];
            j--;
        }
        array[j] = key; // सही जगह पर इन्सर्ट करें
    }
}

int main() {
    int n;
    cout << "एलिमेंट्स की संख्या दर्ज करें: ";
    cin >> n;
    int arr[n]; // दिए गए एलिमेंट्स की संख्या के साथ ऐरे बनाएं
    cout << "एलिमेंट्स दर्ज करें:" << endl;
    for(int i = 0; i < n; i++) {
        cin >> arr[i];
    }
    cout << "सॉर्टिंग से पहले ऐरे: ";
    display(arr, n);
    insertionSort(arr, n);
    cout << "सॉर्टिंग के बाद ऐरे: ";
    display(arr, n);
}

आउटपुट

एलिमेंट्स की संख्या दर्ज करें: 6
एलिमेंट्स दर्ज करें: 9 45 23 71 80 55
सॉर्टिंग से पहले ऐरे: 9 45 23 71 80 55
सॉर्टिंग के बाद ऐरे: 9 23 45 55 71 80

  1. पायथन प्रोग्राम में इंसर्शन सॉर्ट पायथन प्रोग्राम में इंसर्शन सॉर्ट

    इस लेख में, हम पायथन 3.x में इंसर्शन सॉर्ट के कार्यान्वयन के बारे में सीखेंगे। या इससे पहले। एल्गोरिदम इनपुट एलिमेंट्स पर इटरेट करें और प्रत्येक इटरेशन में सॉर्टेड ऐरे को बढ़ाएं। वर्तमान एलिमेंट की तुलना सॉर्टेड ऐरे में उपलब्ध सबसे बड़े मान से करें। यदि वर्तमान एलिमेंट बड़ा है, तो यह एलिमेंट को उ

  1. पायथन प्रोग्राम: इंसर्शन सॉर्ट एल्गोरिदम पायथन प्रोग्राम: इंसर्शन सॉर्ट एल्गोरिदम

    इस लेख में, हम पायथन 3.x या उससे पहले के संस्करण में इंसर्शन सॉर्ट के कार्यान्वयन के बारे में जानेंगे।एल्गोरिदम1. प्रत्येक पुनरावृत्ति पर सॉर्टेड सरणी को बढ़ाते हुए इनपुट तत्वों पर पुनरावृति करें।2. वर्तमान तत्व की तुलना सॉर्टेड सरणी में उपलब्ध सबसे बड़े मान से करें।3. यदि वर्तमान तत्व बड़ा है, तो इ

  1. रूबी के साथ इंसर्शन सॉर्ट में महारत: एक चरण-दर-चरण गाइड रूबी के साथ इंसर्शन सॉर्ट में महारत: एक चरण-दर-चरण गाइड

    नोट: यह रूबी के साथ विभिन्न सॉर्टिंग एल्गोरिदम को लागू करने पर एक श्रृंखला का भाग 4 है। भाग 1 ने बबल सॉर्ट का पता लगाया, भाग 2 ने सिलेक्शन सॉर्ट का पता लगाया, और भाग 3 ने मर्ज सॉर्ट का पता लगाया। जैसा कि हम डेटा को सॉर्ट करने के लिए विभिन्न पद्धतियों का पता लगाना जारी रखते हैं, हम इंसर्शन सॉर्ट की