Skip to main content

Bubble Sort

 


#include <stdio.h>
void bubble(int a[], int n)
{
    int c, i, j;
    for (i = 0; i < n - 1; i++)
    {
        int flag =0;
        for (j = 0; j <= n - 1 - i; j++)
        {
            if (a[j] > a[j + 1])
            {
                c = a[j];
                a[j] = a[j + 1];
                a[j + 1] = c;
                flag =1;  // here we set flag as 1 mean swaping happen
            }
        }
        // if no swaping happen(in i loop) than it will break and save time anotherwise it will run n times
        if(flag==0){
            break;
        }

    }
    printf("\nBubble Sort Successful\n");
}

int main()
{
    int a[] = {22, 5, 3, 8, 6};

    bubble(a, 5); // 5 is sizeof array
    for (int i = 0; i <= 4; i++){
        printf("\t");
        printf("%d ", a[i]);}

    return 0;
}

Comments