Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- #include <algorithm>
- #include <cstdlib>
- #include <fstream>
- #define xD xD
- using namespace std;
- //Zadanie 1.
- void SortowaniePrzezWstawianie (int tab[], int rozmiar)
- {
- int mujstary, j; // Zmienna mujstary slu¿y do przechowywania zmiennej, która jest aktualnie wstawiana (tzw. zmienna tymczasowa). Mam nadzieje, ze tym razem nie bedzie mial Pan problemu ze zrozumieniem znaczenia tej zmiennej. xD
- for (int i=1; i<rozmiar; i++)
- {
- mujstary=tab[i];
- for(j=i-1; j>=0 && tab[j]>mujstary; j--)
- tab[j+1]=tab[j];
- tab[j+1] = mujstary;
- }
- }
- //Zadanie 2.
- void SortowaniePrzezWybor (int tab[], int rozmiar)
- {
- int mujstary, j;
- for (int i=0; i<rozmiar; i++)
- {
- mujstary=i;
- for (j=mujstary; j<rozmiar; j++)
- {
- if (tab[j]>tab[mujstary])
- {
- mujstary=j;
- }
- }
- swap (tab[i], tab[mujstary]);
- }
- }
- //Zadanie 3.
- void SortowanieSzybkie (int poczatek, int koniec, int tab[], int rozmiar) //poczatek = zawsze = 0; koniec = rozmiar-1
- {
- int i = poczatek , j = koniec;
- int pivot = tab[(poczatek + koniec) / 2];
- while (i <= j)
- {
- while (tab[i] < pivot)
- {
- i++;
- }
- while (tab[j] > pivot)
- {
- j--;
- }
- if (i <= j)
- {
- swap(tab[i],tab[j]);
- i++;
- j--;
- }
- }
- if (poczatek < j)
- {
- SortowanieSzybkie(poczatek, j, tab, rozmiar);
- }
- if (i < koniec)
- {
- SortowanieSzybkie(i, koniec, tab, rozmiar);
- }
- }
- int main()
- {
- int r;
- ifstream Tablica;
- Tablica.open("Tablica.txt"); //pierwsza liczba w pliku to wielkosc
- Tablica >> r;
- int tablica[r];
- for (int i=0; i<r; i++)
- {
- Tablica >> tablica[i];
- }
- SortowanieSzybkie(0, r-1, tablica, r); //<----- Miejsce na wpisanie funkcji. Przyklad uzycia jest podany.
- ofstream wynik;
- wynik.open("Wynik.txt", ios::trunc);
- for(int i=0; i<r; i++)
- {
- cout<<tablica[i]<<endl;
- wynik << tablica[i];
- wynik << " ";
- }
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement