Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Diablo II Resurrected: il nuovo DLC Reign of the Warlock
Diablo II Resurrected: il nuovo DLC Reign of the Warlock
Abbiamo provato per voi il nuovo DLC lanciato a sorpresa da Blizzard per Diablo II: Resurrected e quella che segue è una disamina dei nuovi contenuti che abbiamo avuto modo di sperimentare nel corso delle nostre sessioni di gioco, con particolare riguardo per la nuova classe dello Stregone
Deep Tech Revolution: così Area Science Park apre i laboratori alle startup
Deep Tech Revolution: così Area Science Park apre i laboratori alle startup
Siamo tornati nel parco tecnologico di Trieste per il kick-off del programma che mette a disposizione di cinque startup le infrastrutture di ricerca, dal sincrotrone Elettra ai laboratori di genomica e HPC. Roberto Pillon racconta il modello e la visione
HP OMEN MAX 16 con RTX 5080: potenza da desktop replacement a prezzo competitivo
HP OMEN MAX 16 con RTX 5080: potenza da desktop replacement a prezzo competitivo
HP OMEN MAX 16-ak0001nl combina RTX 5080 Laptop e Ryzen AI 9 HX 375 in un desktop replacement potente e ben raffreddato, con display 240 Hz e dotazione completa. Autonomia limitata e calibrazione non perfetta frenano l'entusiasmo, ma a 2.609 euro è tra le proposte più interessanti della categoria.
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 11-04-2009, 11:58   #1
starmar
Senior Member
 
L'Avatar di starmar
 
Iscritto dal: Nov 2008
Messaggi: 583
oridnamento quicksort

Ho letto moltissime guide in rete, ma non mi è ancora chiarissimo questo tipo di ordinamento, che diciamocelo , non è tra i + immediati:
Qualche anima pia che mi da una manina?? grazie a tutti.

P.s. solo teoria il codice non è un problema
starmar è offline   Rispondi citando il messaggio o parte di esso
Old 11-04-2009, 13:08   #2
stdecden
Member
 
L'Avatar di stdecden
 
Iscritto dal: Apr 2007
Messaggi: 263
Per cominciare quicksort é un algoritmo ricorsivo che funziona così:

scegli un elemento (pivot) e sposta tutti gli elementi piú piccoli di questo sulla sinistra, e quelli piú grandi sulla destra:

Codice:
[4]765321 // il 4 è il "Pivot"
321[4]765
Ora ripeti l' algoritmo per tutti gli elementi precedenti al pivot, e poi a quelli successivi:

Codice:
[3]21... // Numeri prima del pivot
21[3]...
...[7]65 // Numeri dopo il pivot
...65[7]
Ancora un'altro passo:

Codice:
[2]1...
1[2]...

...6[5]
...[5]6
e infine avrai una lista ordinata:

Codice:
1[2][3][4][5]6[7]
se ci sono problemi chiedi
stdecden è offline   Rispondi citando il messaggio o parte di esso
Old 11-04-2009, 19:41   #3
starmar
Senior Member
 
L'Avatar di starmar
 
Iscritto dal: Nov 2008
Messaggi: 583
Grazie ma per il discorso degli indici i e j?? Quando si scambiano? Scusa ma al prof dovrò sicuramente spiegarlo tramite indici
starmar è offline   Rispondi citando il messaggio o parte di esso
Old 12-04-2009, 01:14   #4
wingman87
Senior Member
 
Iscritto dal: Nov 2005
Messaggi: 2788
Dipende da quale versione del quicksort vi ha spiegato. Se si tratta di quello illustrato da stdecden l'algoritmo utilizzato è il seguente:
Durante una generica chiamata ricorsiva stai esaminando una porzione di array delimitata dagli indici inf e sup compresi.
Se questa porzione è vuota terminiamo, altrimenti...
L'elemento di indice inf è il pivot per questa chiamata.


Ora utilizziamo un algoritmo che dato un valore k e una porzione di array sposti sulla sinistra tutti gli elementi <= k e a destra gli elementi > k e lo utilizziamo sulla porzione di array da inf+1 a sup e con k=pivot.


Al generico passo di questo algoritmo ci troveremo in questa situazione: sulla sinistra abbiamo una porzione di array già esaminata in cui ogni elemento è <=k, al centro una porzione da esaminare e a destra una porzione già esaminata (vediamo tra poco come) in cui ogni elemento è >k


Con gli indici i e j indichiamo rispettivamente il prossimo e l'ultimo elemento da esaminare. Quindi, se il valore puntato da i è <=k incremento i, altrimenti scambio il valore puntato da i con quello puntato da j e decremento j.
Il ciclo termina quando non ci sono più elementi da esaminare, cioè quando la porzione di array delimitata da i e j è vuota, ossia quando i=j+1 (i ha superato j).
A questo punto spostiamo il pivot nel mezzo, scambiandolo con l'elemento di indice j (infatti al termine dell'algoritmo di ripartizione questo punta sicuramente all'ultimo elemento <=k, al più punta al pivot stesso).
Infine richiamiamo il quicksort sulla porzione a sinistra del pivot e su quella alla sua destra.

Ultima modifica di wingman87 : 12-04-2009 alle 16:16. Motivo: In neretto le parti aggiunte o corrette
wingman87 è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


Diablo II Resurrected: il nuovo DLC Reign of the Warlock Diablo II Resurrected: il nuovo DLC Reign of the...
Deep Tech Revolution: così Area Science Park apre i laboratori alle startup Deep Tech Revolution: così Area Science P...
HP OMEN MAX 16 con RTX 5080: potenza da desktop replacement a prezzo competitivo HP OMEN MAX 16 con RTX 5080: potenza da desktop ...
Recensione Google Pixel 10a, si migliora poco ma è sempre un'ottima scelta Recensione Google Pixel 10a, si migliora poco ma...
6G, da rete che trasporta dati a rete intelligente: Qualcomm accelera al MWC 2026 6G, da rete che trasporta dati a rete intelligen...
La rete elettrica USA funziona solo a me...
La Corte Costituzionale albanese: 'Il ba...
Secondo trailer del nuovo anime di Ken i...
La guerra tra Russia e Ucraina arriva co...
KadNap: il botnet che ha infettato 14.00...
Il cloud è sempre più cent...
Lisuan svela la GPU gaming LX 7G106: deb...
Amazon piena di offerte, ma queste sono ...
Wi-Fi veloce: router e mesh Huawei super...
La retrocompatibilità di Project ...
InvestCloud chiude la sede italiana di M...
TSMC resta irraggiungibile, ma Samsung r...
Il futuro di Dacia: ecco Striker, ma arr...
LG e DataVolt avviano una partnership: s...
Google, una modifica del kernel Android ...
Chromium
GPU-Z
OCCT
LibreOffice Portable
Opera One Portable
Opera One 106
CCleaner Portable
CCleaner Standard
Cpu-Z
Driver NVIDIA GeForce 546.65 WHQL
SmartFTP
Trillian
Google Chrome Portable
Google Chrome 120
VirtualBox
Tutti gli articoli Tutte le news Tutti i download

Strumenti

Regole
Non Puoi aprire nuove discussioni
Non Puoi rispondere ai messaggi
Non Puoi allegare file
Non Puoi modificare i tuoi messaggi

Il codice vB è On
Le Faccine sono On
Il codice [IMG] è On
Il codice HTML è Off
Vai al Forum


Tutti gli orari sono GMT +1. Ora sono le: 17:05.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Served by www3v