Visualizzazione dei risultati da 1 a 5 su 5

Discussione: [java] insertion sort

  1. #1
    Utente di HTML.it
    Registrato dal
    Oct 2003
    Messaggi
    1,258

    [java] insertion sort

    ciao a tutti...mi servirebbe vedere/capire come funx. questo algoritmo.

    Siti, esempi e brevi spiegazioni sono le benvenute

  2. #2
    Utente di HTML.it L'avatar di tato83
    Registrato dal
    Nov 2001
    Messaggi
    51
    Se mi dai la tua mail ti mando delle diapositive sugli algoritmi di ordinamento.....ciao

  3. #3
    codice:
    void InsertionSort(Record lista[],int n)
    {
    	int i,j;
       Record prossimo;//l'elemnto di separazione tra i due sottoarray
       for(i=1;i<n;i++)
       {
       	prossimo=lista[i];   
       	for(j=i-1;j>=0&&Confronta(prossimo,lista[j])<0;j--)
          	lista[j+1]=lista[j];   
          lista[j+1]=prossimo;
       }
    }

    E' lo stesso metodo usato dai giocatori a carte per ordinarle.
    Si artiziona l'array in due,gli elemnti non ordianati (a destra)e quelli già ordinati (a sinistra).inizialmente l'array degli ordinati contiene un solo elemento (uno solo è un array ordinato),poi si prende il secondo e lo si inserisce al suo posto nell'array degli ordinati che a questo punto si espande di uno.Ovviamente per trovare la giusta posizione in cui inserirlo bisoga fare una serie di confronti e scambi.Alla fine ti resta il sottoarray di destra vuoto ed hai finito.
    l'algoritmo ha una complessità nel caso perggiore O(n^2).é facile capire che il caso peggiore è l'array ordinato all'inverso.Nel caso migliore (array già ordinato) esegue solo n passi (n =lunghezza arrya).
    Non c'è molto altro da dire.
    Il centro dell'attenzione non è sempre un buon posto in cui trovarsi

    Mai discutere con uno stupido, la gente potrebbe non capire la differenza. (O. W.)

  4. #4
    Ah l'algoritmo te l'ho postato in C anche se il titolo del 3d riporta Java,spero non sia un problema.tanto la comprensione dell'algoritmo non dipende dal linguaggio
    Il centro dell'attenzione non è sempre un buon posto in cui trovarsi

    Mai discutere con uno stupido, la gente potrebbe non capire la differenza. (O. W.)

  5. #5
    Utente di HTML.it
    Registrato dal
    Oct 2003
    Messaggi
    1,258
    Si ho visto..va benissimo, ringrazio entrambi per adesso...

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.