Visualizzazione dei risultati da 1 a 4 su 4
  1. #1

    Tempo di esecuzione codice?

    In java cosa dovrei fare per sapere qual'č il tempo di esercuzione del mio codice?
    Mi sembra ci sia la classe System.NanoTime.
    Non ho ben capito come usare i metodi, per sapere esattamente il tempo mi fareste un esempio brevissimo?

    P.S. qual'č un tempo di esecuzione buono su cui basare e confrontare la mia esecuzione?

  2. #2
    Il modo pił semplice per sapere quanto dura un certo blocco di codice č quello di salvarti il tempo attuale prima di iniziare ad eseguire il blocco, eseguire il blocco, confrontare il tempo iniziale con l'istante di tempo finale:


    Codice PHP:
    long start System.currentTimeMillis();  //istante iniziale in millisecondi

    ...esecuzione istruzioni...

    long end System.currentTimeMillis();   //istante finale in millisecondi

    System.out.println(end start); //durata in millisecondi 
    Al mio segnale... scatenate l'inferno!

  3. #3
    Per esempio cosģ?

    codice:
    import java.util.*;
    import java.io.*;
    
    public class Trovailprodottodispari
    {
    	public static void main(String [] args) throws IOException
    	{
    		
    		Scanner s=null;
    		FileWriter out=null;
    		
    		try
    		{
    			long start=System.currentTimeMillis();
    			
    			s=new Scanner(new File("input.txt"));
    			out=new FileWriter("output.txt");
    			
    			int sequenze=s.nextInt();
    			
    			int numeri=s.nextInt();
    			
    			int dispari=0;
    			
    			while(sequenze!=0)
    			{			
    			
    				for(int i=0; i<numeri; i++)
    				{
    					if(s.nextInt()%2!=0)
    					dispari++;
    				}
    			
    			      if(dispari>=2)
    				out.write("1"+"\r"+"\n");
    			      else 
    				      out.write("0"+"\r"+"\n");
    			
    			    sequenze--;
    			      if(sequenze!=0)
    				numeri=s.nextInt();
    			      
    			      dispari=0;
    		
    			}
    	
    			long end=System.currentTimeMillis();
    			System.out.println(end-start);
    			
    		}
    		
    		
    		catch(IOException e)
    		{
    		}
    		
    		finally
    		{
    			if(s!=null) s.close();
    			if(out!=null) out.close();
    		}
    		
    	}
    }
    Mi dą a volte 188, a volte 156, a volte 170
    Sono buoni tempi per un codice che prende in input delle sequenze e verifica se per ognuna vi č una coppia di numeri il cui prodotto č dispari?

  4. #4
    Utente di HTML.it L'avatar di Alex'87
    Registrato dal
    Aug 2001
    residenza
    Verona
    Messaggi
    5,802
    Originariamente inviato da Darčios89
    Mi dą a volte 188, a volte 156, a volte 170
    E quindi? Non vedo il problema: il tempo di esecuzione varia a seconda di quanta altra roba hai in esecuzione in quel momento!
    SpringSource Certified Spring Professional | Pivotal Certified Enterprise Integration Specialist
    Di questo libro e degli altri (blog personale di recensioni libri) | ​NO M.P. TECNICI

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 © 2025 vBulletin Solutions, Inc. All rights reserved.