bogi007 0 Odesláno: 9. Červen, 2013 Share Odesláno: 9. Červen, 2013 Ahoj, Snažím se upravit bubble sort řazení čísla od nejmenšího po největší, ale nedaří se mi, proto žádám vás. Takto řadí od největšího po nejmenší. bubbleSort(array[], length) { new i,j; for(i=0;i<length;i++) { for(j=0;j<i;j++) { if(array[i]>array[j]) { new temp=array[i]; //swap array[i]=array[j]; array[j]=temp; } } } } Link to comment Share on other sites More sharing options...
0 LYRIcS 88 Odesláno: 9. Červen, 2013 Share Odesláno: 9. Červen, 2013 čo presne to ma robiť? zoradiť "array" od najväčšieho po najmenšie? ak áno tak použi toto, funguje to, teraz som to narychlo zrobil a skúšal: bubbleSort(array[], lenght) //najlepšie ak lenght bude strlen(array) { new maxval, bool:used[1024] = {false, ...}, save[1024]; //array môže mať maximalne 1024 znakov for(new i=0; i<lenght; i++) save = array; for(new i=0; i<lenght; i++) { maxval = -1; new order; for(new a=0; a<lenght; a++) if(used[a] == false) if(save[a] > maxval) { maxval = save[a]; array = save[a]; order = a; } used[order] = true; } } Link to comment Share on other sites More sharing options...
0 Ranger 8 Odesláno: 9. Červen, 2013 Share Odesláno: 9. Červen, 2013 podľa toho čo napisal lyrics na začiatku by som neodporučoval strlen použivať keďže strlen počíta znaky kým nepríde po hodnotu 0 ktorá sa v tomto prípade može nachádzať aj v strede arrayu a pri použití strlen by sa ďalšie hodnoty vynechali, ďalej dá sa to urobiť viac efektívnejšie bez využitia nejakých ďalších rozsiahlych pomocných arrayov ... na wikipedii je vidieť princíp bubbleSortu a je to tak že vždy sa v cykle kontrolujú 2 susedné hodnoty v arrayi a porovnávajú sa ich veľkosti (ak je ľavý väčši ako pravý tak sa prehodia ) a to sa opakuje až kým sa nezoradia stock bubbleSort(srcArray[],len) { new bool:ordered=true; do { ordered=true; for(new idx=0;idx<len-1;idx++) { if(srcArray[idx]>srcArray[idx+1]) { new temp=srcArray[idx]; srcArray[idx]=srcArray[idx+1]; srcArray[idx+1]=temp; ordered=false; } } }while(!ordered); } Link to comment Share on other sites More sharing options...
0 LYRIcS 88 Odesláno: 9. Červen, 2013 Share Odesláno: 9. Červen, 2013 Tak vsak to moje sa da upravit keby chce Link to comment Share on other sites More sharing options...
Dotaz
bogi007 0
Ahoj,
Snažím se upravit bubble sort řazení čísla od nejmenšího po největší, ale nedaří se mi, proto žádám vás.
Takto řadí od největšího po nejmenší.
Link to comment
Share on other sites
3 odpovědí na tuto otázku
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now