Yerləşdirmə Sortu

Çətinlik səviyyəsi Mühit
Tez-tez soruşulur Accenture Cisco Vadi Grofers Ardıc şəbəkələri MAQ Veritas
Geyim çeşidləyiciBaxılıb 26

Daxil etmə çeşidləmə alqoritmindən istifadə edərək verilmiş çeşidlənməmiş massivi sırala.

Input: 9,5,1,6,11,8,4 {}

Çıxış: 1,4,5,6,8,9,11 {}

nəzəriyyə

  • Yerləşdirmə Sıralama, biz insanlar bir sıra nömrəli obyektləri (əvvəlki kartlar) sıraladığımız kimi nömrələri də eyni şəkildə sıralayır.
  • Sayı çeşidlənməmiş massivdən (sağ alt sıra) sıralanmış massivdəki mövqeyə (sol subarray) götürülür ki, sol alt sıra sıralanmış qalsın.
  • Bu artan yanaşma əsaslı bir üsuldur.

Insertion Sort alqoritmi

  1. Sıralanmamış bir sıra içərisindəki ilk elementi seçin / qeyd edin, sıralanmış massivdə düzgün mövqeyə keçirin.
  2. İşarəni sıralanmamış bir sıra içərisindəki növbəti elementə keçir.

Yerləşdirmə SortuPin

C ++ Proqramı

#include <iostream>
using namespace std;

void insertSort(int arr[],int n)
{
    int i,j,save;

    for(int i=1;i<n;i++)
    {
        j = i-1;
        save = arr[i];
        
        // look for correct position of arr[i]
        while(j>=0 && arr[j] > save)
        {
            // shifting array elements towards the right
            arr[j+1] = arr[j];
            j--;
        }
        // place arr[i] at the correct position
        arr[j+1] = save;
    }
}

int main()
{
    
    int arr[] = {9,5,1,6,11,8,4};
    int n = sizeof(arr)/sizeof(arr[0]);

    insertSort(arr,n);

    for(int i=0;i<n;i++)
    cout<<arr[i]<<" ";
    
    return 0;
}

Buraxılış

1 4 5 6 8 9 11

Java Proqramı

class iSort
{
    static void insertSort(int arr[])
    {
        int n = arr.length;
        int i,j,save;

        for(i=1;i<n;i++)
        {
            j = i-1;
            save = arr[i];

            // look for correct position of arr[i]
            while(j >= 0 && arr[j] > save)
            {
                // shifting array elements towards the right
                arr[j+1] = arr[j];
                j--;
            }
            // place arr[i] at the correct position
            arr[j+1] = save;
        }
    }

    public static void main(String args[]) 
    {
        int arr[] = {9,5,1,6,11,8,4};
        insertSort(arr);

        for(int i=0;i<arr.length;i++)
        System.out.print(arr[i] +" ");   
    }
}

Buraxılış

1 4 5 6 8 9 11

Mürəkkəblik təhlili

  • Zamanın mürəkkəbliyi: T (n) = O (n2)
  • O (n2) bir sıra tərs sıralanan vaxt və O (n) sıra sıralanan zaman.
  • Kosmik Mürəkkəblik: A (n) = O (1)

Əlavə məlumat

  • Insertion Sort yerində çeşidləmə alqoritmidir.
  • Bu sabit bir təbiətdir.
  • Insertion Sort giriş massivi demək olar ki, çeşidləndikdə faydalıdır, yalnız bir neçə element natamam böyük massivin yerində yerləşdirilir.
  • Sıralanacaq massivin ölçüsü daha kiçik olduqda da faydalıdır.

arayış  Müsahibə Suallar

Translate »