Lila25mila
Feb. 25, 2019, 2:29 p.m.

Bubble sort algorithm

The bubble sort algorithm starts by comparing the first two elements of an array and replacing them if necessary. For example, if you want to sort the elements of an array in ascending order and the first element is greater than the second, you need to swap the elements. If the first element is less than the second, you must not swap it. The second and third elements are then compared again and swapped if necessary, and this process continues until the last and penultimate elements have been compared and swapped. This completes the first step of the bubble sort.


If there are n elements to sort, then the process mentioned above should be repeated n-1 times to get the desired result. But for better performance in the second step, the last and penultimate elements are not compared, because the corresponding element is automatically placed at the end after the first step. Similarly, in the third step, the last and penultimate and penultimate elements are not compared, and so on.

For a better understanding, let's look at the figure.

The figure shows 5 elements for sorting and 4 steps.

Program for sorting elements using bubble sort algorithm
  1. // Программа для сортировки данных в порядке возрастания с использованием пузырьковой сортировки.
  2. #include <stdio.h>
  3. int main()
  4. {
  5. int data[100],i,n,step,temp;
  6. printf("Enter the number of elements to be sorted: ");
  7. scanf("%d",&n);
  8. for(i=0;i<n;++i)
  9. {
  10. printf("%d. Enter element: ",i+1);
  11. scanf("%d",&data[i]);
  12. }
  13.  
  14. for(step=0;step<n-1;++step)
  15. for(i=0;i<n-step-1;++i)
  16. {
  17. if(data[i]>data[i+1]) // Чтобы отсортировать в порядке убывания, измените > на < в этой строке.
  18. {
  19. temp=data[i];
  20. data[i]=data[i+1];
  21. data[i+1]=temp;
  22. }
  23. }
  24. printf("In ascending order: ");
  25. for(i=0;i<n;++i)
  26. printf("%d ",data[i]);
  27. return 0;
  28. }
  1. Enter number of terms(should be less than 100): 5
  2. Enter elements: 12
  3. 1
  4. 2
  5. 5
  6. 3
  7. In ascending order: 1 2 3 5 12

Note: Although this code is used in C programming, this method can be used in any programming to sort the elements of an array.
The bubble sort algorithm is quite popular, but there are many better algorithms than bubble sort.

Attention! Bubble sort should not be used to sort large data if performance is a concern in this program.

By article asked0question(s)

2

Do you like it? Share on social networks!

Comments

Only authorized users can post comments.
Please, Log in or Sign up
  • Last comments
  • Evgenii Legotckoi
    March 9, 2025, 9:02 p.m.
    К сожалению, я этого подсказать не могу, поскольку у меня нет необходимости в обходе блокировок и т.д. Поэтому я и не задавался решением этой проблемы. Ну выглядит так, что вам действитель…
  • VP
    March 9, 2025, 4:14 p.m.
    Здравствуйте! Я устанавливал Qt6 из исходников а также Qt Creator по отдельности. Все компоненты, связанные с разработкой для Android, установлены. Кроме одного... Когда пытаюсь скомпилиров…
  • ИМ
    Nov. 22, 2024, 9:51 p.m.
    Добрый вечер Евгений! Я сделал себе авторизацию аналогичную вашей, все работает, кроме возврата к предидущей странице. Редеректит всегда на главную, хотя в логах сервера вижу запросы на правильн…
  • Evgenii Legotckoi
    Oct. 31, 2024, 11:37 p.m.
    Добрый день. Да, можно. Либо через такие же плагины, либо с постобработкой через python библиотеку Beautiful Soup
  • A
    Oct. 19, 2024, 5:19 p.m.
    Подскажите как это запустить? Я не шарю в программировании и кодинге. Скачал и установаил Qt, но куча ошибок выдается и не запустить. А очень надо fb3 переконвертировать в html