Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Roborock Qrevo Curv 2 Flow: ora lava con un rullo
Roborock Qrevo Curv 2 Flow: ora lava con un rullo
Qrevo Curv 2 Flow è l'ultima novità di casa Roborock per la pulizia di casa: un robot completo, forte di un sistema di lavaggio dei pavimenti basato su rullo che si estende a seguire il profilo delle pareti abbinato ad un potente motore di aspirazione con doppia spazzola laterale
Alpine A290 alla prova: un'auto bella che ti fa innamorare, con qualche limite
Alpine A290 alla prova: un'auto bella che ti fa innamorare, con qualche limite
Abbiamo guidato per diversi giorni la Alpine A290, la prima elettrica del nuovo corso della marca. Non è solo una Renault 5 sotto steroidi, ha una sua identità e vuole farsi guidare
Recensione HONOR Magic 8 Lite: lo smartphone indistruttibile e instancabile
Recensione HONOR Magic 8 Lite: lo smartphone indistruttibile e instancabile
Abbiamo provato a fondo il nuovo Magic 8 Lite di HONOR, e per farlo siamo volati fino a Marrakech , dove abbiamo testato la resistenza di questo smartphone in ogni condizione possibile ed immaginabile. Il risultato? Uno smartphone praticamente indistruttibile e con un'autonomia davvero ottima. Ma c'è molto altro da sapere su Magic 8 Lite, ve lo raccontiamo in questa recensione completa.
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 24-01-2006, 13:24   #1
luxorl
Senior Member
 
L'Avatar di luxorl
 
Iscritto dal: Oct 2003
Città: Pisa/Cosenza
Messaggi: 1364
[JAVA] Vorrei vedere ad occhio la differenza tra binaysearch e una ricerca lineare..

Ciao,
volevo vedere ad occhio come la ricerca lineare su un vettore ordinato sia notevolmente più lenta di una binarysearch sullo stesso vettore. Ovviamente mi servirebbe un mega vettore per vedere questa differenza... io avevo provato a fare questo main:

Codice:
public static void main(String args[]){
		int v[]=new int[10000000];
		for(int i=0;i<10000000;i++)
		v[i]=i;
		int x=Console.readInt("Numero da cercare: ");
		int r=Lineare(v,x);
		System.out.println("Posizione: "+r);

	}
Ma ancora sono pochi gli elementi da controllare per vedere la differenza ad occhio nudo, e se aumento ancora la dimensione del vettore ho un OutOfMemoryError: Java Heap Space..

Come potrei fare?
Poi come posso inserire nel programma (sia nella ricerca binaria sia in quella lineare) un cronometro per avere un risultato preciso di quanto ci mettono?
__________________
luxorl è offline   Rispondi citando il messaggio o parte di esso
Old 24-01-2006, 13:30   #2
cionci
Senior Member
 
L'Avatar di cionci
 
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
Conta le iterazioni invece di usare il tempo...

Ogni volta che fai un contronto per vedere se l'elemento su cui sei posizionato è quello che cercavi incrementi di 1 un contatore... Al teremine del programma stampi il contatore...
cionci è offline   Rispondi citando il messaggio o parte di esso
Old 24-01-2006, 13:34   #3
wisher
Senior Member
 
L'Avatar di wisher
 
Iscritto dal: Aug 2005
Messaggi: 2755
oppure se vuoi vedere a occhio fai eseguire la ricerca un migliaio di volte e non una sola...
cmq ti consiglio di contare le iterazioni
__________________
wisher è offline   Rispondi citando il messaggio o parte di esso
Old 24-01-2006, 13:36   #4
luxorl
Senior Member
 
L'Avatar di luxorl
 
Iscritto dal: Oct 2003
Città: Pisa/Cosenza
Messaggi: 1364
Quote:
Originariamente inviato da cionci
Conta le iterazioni invece di usare il tempo...

Ogni volta che fai un contronto per vedere se l'elemento su cui sei posizionato è quello che cercavi incrementi di 1 un contatore... Al teremine del programma stampi il contatore...
Vabè ma così avrei un risultato quasi "scontato" il numero di confronti che fa la ricerca lineare sarà pari alla posizione in cui si trova l'elemento cercato.

Io vorrei lanciare prima la ricerca binaria e poi la ricerca lineare sulla stessa istanza e fargli cercare l'ultimo elemento.. e vorrei in qualche modo vedere ad occhio nudo la ricerca lineare soffrire e quella binaria farcela in un paio di secondi

Ma un modo per far fare la ricerca su un mega vettore molto più grande di 10'000'000 celle non c'è?
__________________
luxorl è offline   Rispondi citando il messaggio o parte di esso
Old 24-01-2006, 13:37   #5
luxorl
Senior Member
 
L'Avatar di luxorl
 
Iscritto dal: Oct 2003
Città: Pisa/Cosenza
Messaggi: 1364
Quote:
Originariamente inviato da wisher
oppure se vuoi vedere a occhio fai eseguire la ricerca un migliaio di volte e non una sola...
cmq ti consiglio di contare le iterazioni
Ora provo a far eseguire la ricerca un migliaio di volte...
__________________
luxorl è offline   Rispondi citando il messaggio o parte di esso
Old 24-01-2006, 13:38   #6
^TiGeRShArK^
Senior Member
 
L'Avatar di ^TiGeRShArK^
 
Iscritto dal: Jul 2002
Città: Reggio Calabria -> London
Messaggi: 12112
per aumentare la dimensione del vettore basta aumentare la dimensione massima dell heap space allocata dalla java VM.
L'opzione è la seguente:
Quote:
-Xmxn
Specify the maximum size, in bytes, of the memory allocation pool. This value must a multiple of 1024 greater than 2MB. Append the letter k or K to indicate kilobytes, or m or M to indicate megabytes. The default value is 64MB. Examples:

-Xmx83886080
-Xmx81920k
-Xmx80m
__________________
^TiGeRShArK^ è offline   Rispondi citando il messaggio o parte di esso
Old 24-01-2006, 13:59   #7
luxorl
Senior Member
 
L'Avatar di luxorl
 
Iscritto dal: Oct 2003
Città: Pisa/Cosenza
Messaggi: 1364
Quote:
Originariamente inviato da luxorl
Ora provo a far eseguire la ricerca un migliaio di volte...
Fantastico anche ripetendo la ricerca 10000000 volte con la binaria ci metto 3 o 4 secondi!!
Mentre la lineare già ripetendola solo 1000 volte ci mette un 40-45 secondi!!
__________________

Ultima modifica di luxorl : 24-01-2006 alle 14:02.
luxorl è offline   Rispondi citando il messaggio o parte di esso
Old 24-01-2006, 13:59   #8
luxorl
Senior Member
 
L'Avatar di luxorl
 
Iscritto dal: Oct 2003
Città: Pisa/Cosenza
Messaggi: 1364
Quote:
Originariamente inviato da ^TiGeRShArK^
per aumentare la dimensione del vettore basta aumentare la dimensione massima dell heap space allocata dalla java VM.
L'opzione è la seguente:
Da eseguire dove?
__________________
luxorl è offline   Rispondi citando il messaggio o parte di esso
Old 24-01-2006, 14:02   #9
^TiGeRShArK^
Senior Member
 
L'Avatar di ^TiGeRShArK^
 
Iscritto dal: Jul 2002
Città: Reggio Calabria -> London
Messaggi: 12112
è tra le opzioni della VM java..
quando lanci java.exe in pratica....
__________________
^TiGeRShArK^ è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


Roborock Qrevo Curv 2 Flow: ora lava con un rullo Roborock Qrevo Curv 2 Flow: ora lava con un rull...
Alpine A290 alla prova: un'auto bella che ti fa innamorare, con qualche limite Alpine A290 alla prova: un'auto bella che ti fa ...
Recensione HONOR Magic 8 Lite: lo smartphone indistruttibile e instancabile Recensione HONOR Magic 8 Lite: lo smartphone ind...
Sony WF-1000X M6: le cuffie in-ear di riferimento migliorano ancora Sony WF-1000X M6: le cuffie in-ear di riferiment...
Snowflake porta l'IA dove sono i dati, anche grazie a un accordo con OpenAI Snowflake porta l'IA dove sono i dati, anche gra...
Energia geotermica: la (costosa) rispost...
MG ha già venduto 1 milione di au...
"Something Big Is Happening" —...
Renault chiude il 2025 con una perdita r...
Le 34 migliori offerte Amazon di oggi: T...
Amazfit T-Rex Ultra 2 arriva su Amazon: ...
Meta chiude messenger.com: da aprile 202...
Il paradosso dell'IA: aumenta la produtt...
Oltre 2 TB di dati su un foglio A4: &egr...
Turboden realizza la più grande p...
SEGA pronta al debutto del misterioso 'S...
Microsoft ce l'ha fatta: adesso il 100% ...
Cuffie Hi-Res eleganti, con ANC e 100 or...
Processo a Meta, Zuckerberg difende Inst...
Password in pericolo: scoperte gravi lac...
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: 15:39.


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