Advertisement
Fejsu

Algorytmy sortujace

Apr 1st, 2020
106
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.03 KB | None | 0 0
  1. #include <iostream>
  2. using namespace std;
  3.  
  4.  
  5. void bubble_sort(int *tab, int size) {
  6. int i = -1, j;
  7. bool if_swap;
  8. do {
  9. if_swap = false;
  10. for (++i, j = size - 1; j > i; --j) {
  11. if (tab[j] < tab[j - 1]) {
  12. swap(tab[j], tab[j - 1]);
  13. if_swap = true;
  14. }
  15. }
  16. } while (if_swap);
  17. }
  18.  
  19. void insert_sort(int *tab, int size) {
  20. int x;
  21. for (int j = 1, i; j < size; j++) {
  22. x = tab[j];
  23. //wstaw tab[j] w posortowany ciąg tab[0...,j-1]
  24. for (i = j - 1; i >= 0 && x < tab[i]; --i)
  25. tab[i + 1] = tab[i];
  26. tab[i + 1] = x;
  27. }
  28. }
  29.  
  30. int main() {
  31.  
  32. int *tab, size;
  33. cout << "Podaj z ilu elementow ma skladac sie tablica do posortowania" << endl;
  34. cin >> size;
  35.  
  36. tab = new int[size];
  37. //wczytywanie liczb
  38. cout << "Podaj liczby do posortowania" << endl;
  39. for (int i = 0; i < size; i++)
  40. cin >> tab[i];
  41.  
  42. //bubble_sort(tab, size);
  43. insert_sort(tab, size);
  44. //wypisanie posortowanych
  45. cout << "Posortowana tablica: " << endl;
  46. for (int i = 0; i < size; i++)
  47. cout << tab[i] << " ";
  48.  
  49. cout << endl;
  50.  
  51. return 0;
  52. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement