top of page
Caută
  • Poza scriitoruluioanaunciuleanu

Bubble Sort Algorithm in C++



Bubble Sort algorithm is the simplest sorting algorithm. It compares each value with the adjacent value. If the second value is smaller than the first one, then we swap the values. So we compare A[0] with A[1], and if A[0] is greater than A[1] we swap them. This goes on until we finish the array, and then we enter the loop again. This verification is done in a loop, until there is an entire search in the array with no swapping of elements.



// Bubble sort

#include <iostream>
using namespace std;

void bubbleSort(int arrayOfNumbers[], int numberOfElements)
{
    for (int i = 0; i < numberOfElements - 1; i++)
    {
        for (int j = 0; j < numberOfElements - i - 1; j++)
        {
            if (arrayOfNumbers[j] > arrayOfNumbers[j + 1])
            {
                int temp = arrayOfNumbers[j];
                arrayOfNumbers[j] = arrayOfNumbers[j + 1];
                arrayOfNumbers[j+1] = temp;
            }
        }
    }
}

void printElementsOfArray(int arrayOfNumbers[], int numberOfElements)
{
    for (int i = 0; i < numberOfElements; i++)
    {
        cout << arrayOfNumbers[i] << " ";
    }
    cout << endl;
}

int main()
{
    int arrayOfNumbers[] = {1, 15, 9, 6, 17, 99, 48, 30, 61, 21};
    int numberOfElements = sizeof(arrayOfNumbers) / sizeof(arrayOfNumbers[0]);
    bubbleSort(arrayOfNumbers, numberOfElements);

    cout<<"The sorted array is: \n";
    printElementsOfArray(arrayOfNumbers, numberOfElements);
    return 0;
}

13 afișări0 comentarii

Postări recente

Afișează-le pe toate

Weighted Job Scheduling in JAVA

You receive a list of jobs that have three elements: start time, finish time and profit. You have to schedule the jobs with no overlapping, in order to obtain the maximum profit. Solution: 1. static

Tiling Problem in JAVA

You can use a board that is 2 x n size. The tiles are of size 2 x 1. Count the number of ways to tile the board. Tiles can be placed vertically 2 x 1 or horizontally as 1 x 2. Solution: 1. static

bottom of page