..


Enllaços patrocinats

Algorismes d'ordenació en C

Article escrit per Stefano Cancedda
Pàgina 1 de 5

Un sistema de xifrat és una seqüència d'operacions d'ordenació que doni prioritat a una ordre dels elements en un ordre establert d'acord amb un informe. Aquestes línies estaran exposades les més comunes (amb mostres un'approccio altament orientat) i cadascun es va comentar sobre els mèrits i defectes.
Per simplificar els exemples sempre s'utilitzarà com un conjunt de nombres naturals i la relació d'ordre com la de la majoria, els algoritmes estan exposats universalment vàlida, net d'una obra curta per adaptar el codi.

Selecció de tipus

Per sol · licitar un nombre determinat i una primera intuïció es pot escanejar el portador moltes vegades la seva totalitat, per trobar el valor mínim de cada pas i afegir a la seqüència ordenada, inicialment identificat amb un segon portaavions;






 Exemple: {5,1,3,8,2}







 Pas # 1 -> {1, X, X, X, X}







 Pas # 2 -> {1,2, X, X, X}







 Pas # 3 -> {1,2,3, X, X}







 Pas # 4 -> {1,2,3,5, X}







 Pas # 5 -> {1,2,3,5,8}



(Marcats amb X és un vector de posició de la nova encara no escrita)

Des del punt de vista d'espai a la memòria, aquest algorisme aplicat d'aquesta manera és molt desavantatjosa en què el conjunt inicial es copia a un altre. Un truc senzill és reemplaçar l'operació de còpia correctives amb el canvi del valor mínim acaba de trobar el primer element que no forma part del subconjunt dels nombres ja estan ordenats.






 Exemple: {5,1,3,8,2}







 Pas # 1 -> {1,5,3,8,2}







 Pas # 2 -> {1,2,3,8,5}







 Pas # 2 -> {1,2,3,8,5}







 Pas # 3 -> {1,2,3,5,8}



La xifra es modifica Ordenar selecció, que segueix a una possible implementació:





 sel_sort (int * v, int dim)







 {



   



 int i = 0, temp = 0, i = 0, j = 0;



   



 for (i = 0, i = j -)



   



 {

  

      



 

      



 {



         



 temp = v [j];



         



 i = j;



      



 }

  

   



 swap (v, i, i) / / Canviar la posició de l'AIE, vector v



   



 }







 }



El llaç doble està situat suposar que el nombre de comparacions realitzades per aquest algorisme és d'una relació quadràtica amb el nombre d'elements.
Això significa que una sèrie de comparacions es realitzen amb ordre de magnitud igual al quadrat del nombre d'elements de la col · lecció.
Tingueu en compte que en casos normals és el nombre de comparacions tot i l'eficiència i la resta de les operacions, la majoria de les tasques, tenen un cost insignificant en comparació amb la comparació.
Quan vostè ha d'ordenar els registres de considerable grandària, el nombre d'intercanvis té una influència decisiva en el rendiment. En aquest segon cas, el tipus de selecció d'unes solució excel · lent i òptim, ja que cada element es mou a més d'una vegada.

L'algorisme d'ordenació per selecció és també estable.
Un algorisme estable conserva l'efecte de les comandes anteriors en el cas d'estructures de dades són tractats en múltiples claus, com ara Nom i Cognoms:






 1.

 



 Charles Green







 2.

 



 Andrea Rossi







 3.

 



 John Smith







 4.

 



 Luciano Bianchi



Ordenem els camps per al nom:





 1.

 



 Andrea Rossi







 2.

 



 Charles Green







 3.

 



 John Smith







 4.

 



 Luciano Bianchi



Ara que la finalitat pel cognom, un algorisme més estable preservar la primacia de la inicial, o, en cas d'empat entre les tecles que vostè està demanant, serà la posició de primer ordre per a determinar la ubicació final.





 1.

 



 Luciano Bianchi







 2.

 



 Andrea Rossi







 3.

 



 John Smith







 4.

 



 Charles Green



Un algorisme estable s'ha d'assegurar que en aquest cas, sempre precedeix a Andrea Rossi Mario Rossi. Un no té un comportament estable no es pot predir, el que podria ser invertit les posicions 2 i 3.

El tipus de selecció és també en el lloc.
Un algorisme es diu en el mateix lloc (o fins i tot al seu lloc) si no es prenen l'espai de memòria addicional de la base de dades original, o es tracta d'una petita quantitat constant.

A la mateixa categoria ...
E-Learning
Curs de l'OpenOffice Curs de l'OpenOffice
El programari de codi obert per a la gestió del treball d'oficina. A només 25 €.
Curs de pintura Shop Pro Curs de pintura Shop Pro
Gràfics per a la web i edició de fotos amb Corel PSP coneguts. A partir de 49 €.
Curs VB.NET Curs VB.NET
Fer que les aplicacions d'escriptori amb Visual Basic. NET. A partir de 49 €.
Enllaços patrocinats