Implementacja Shellsortu
This commit is contained in:
@@ -188,15 +188,15 @@ void ulepszone_sortowanie_babelkowe(int* tablica, int rozmiar)
|
|||||||
|
|
||||||
void sortowanie_shella(int* tablica, int rozmiar)
|
void sortowanie_shella(int* tablica, int rozmiar)
|
||||||
{
|
{
|
||||||
int h = 0;
|
int h = 1;
|
||||||
while(h<rozmiar/9){
|
while(h<rozmiar/9){
|
||||||
h=3*h+1;
|
h=3*h+1;
|
||||||
}
|
}
|
||||||
while(h>0){
|
while(h>0){
|
||||||
for (int i=h+1; i<rozmiar; i++){
|
for (int i=h; i<rozmiar; i++){
|
||||||
int x = tablica[i];
|
int x = tablica[i];
|
||||||
int j = i;
|
int j = i;
|
||||||
while ( (j >= h+1) && (x< tablica[j-h])){
|
while ( (j >= h) && ( x< tablica[j-h])){
|
||||||
tablica[j]=tablica[j-h];
|
tablica[j]=tablica[j-h];
|
||||||
j=j-h;
|
j=j-h;
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user