| Home  | Casa  | Hardware  | Networking  | Programmazione  | Software  | Domanda  | Sistemi  |   
Programmazione  
  • C /C + + Programming

  • Computer Programming Languages

  • Delphi Programming

  • Java Programming

  • Programmazione Javascript

  • PHP /MySQL Programmazione

  • Perl Programming

  • Python Programming

  • rubino Programmazione

  • Nozioni di base di Visual Programming
  •  
    Conoscenza Informatica >> Programmazione >> Computer Programming Languages >> Content
    Come risolvere ricorsione
    ricorsione è un concetto potente nel campo dell'informatica , ma può essere difficile per i neofiti a cogliere . Ricorsione comporta una funzione o metodo invocare ripetutamente se stesso in un contesto diverso fino al raggiungimento di un contesto "base" e restituito. In altre parole , per risolvere un problema , il programma recontexualizes come un problema leggermente diverso . Quando si implementa un algoritmo ricorsivo , sempre in considerazione la forma più semplice del problema e stabilire questo esempio semplificato come un " caso base ", che tutte le altre versioni del problema farà riferimento . Istruzioni
    1

    Definire l'intestazione di una funzione - il nome della funzione e dei suoi ingressi . Per esempio, una funzione che trova un particolare numero di Fibonacci potrebbe apparire come segue :

    fib ( int n ) { }

    Qui, la funzione calcola il numero di Fibonacci " ennesimo " nella sequenza .
    2

    scrivere come la funzione verrà chiamata genericamente . Per esempio, quando si chiama fib ( ) , si utilizzerà un numero intero come argomento e registrare il numero intero che calcola :

    int risultato = fib ( x ) ;
    3

    Definire il " caso base " del vostro problema di ricorsione . Ci possono essere casi multipli di base . Come la sequenza di Fibonacci richiede due numeri , avrete bisogno di due casi di base per implementare la sua soluzione

    if ( n == 0 ) return 0; . If ( n == 1) return 1;
    < br > 4

    Definire il passo ricorsiva del problema ricorsione come una più piccola , versione più semplice dello stesso problema , facendo riferimento all'esempio invocazione dal passo 2. Nel nostro esempio , la sequenza di Fibonacci è una sequenza matematica in cui ciascun numero della riga è la somma dei due precedenti numeri nella sequenza . L'algoritmo per trovare un determinato numero di Fibonacci deve quindi invocare se stessa due volte, una per il numero precedente e una volta per il numero prima del numero precedente :

    int result1 = fib ( n-1) ; int result2 = fib ( n - 2) ;

    ritorno result1 + result2 ;
    5

    Mettere insieme la funzione , ad esempio :

    fib ( int n ) {if ( n == 0 ) return 0; //caso base 1else if ( n == 1) return 1; //caso base 2

    else { //recursive stepint result1 = fib ( n-1) ; int risultato2 = fib (n - 2) ;

    ritorno result1 + result2 ; } }


    la struttura del " caso base " e " passo ricorsivo " sarà lo stesso per tutte le funzioni ricorsive , se ci possono essere più casi base e lunghi passaggi ricorsivi .

    Previous :

    next :
      Articoli Correlati
    ·Come sostituire un STRG Con un STRG inferiore 
    ·Come esecuzione di codice sorgente 
    ·Come possono i cicli infiniti essere creato ? 
    ·Come leggere un byte del file di byte in C + + 
    ·Come scrivere in formato CSV con ColdFusion 
    ·Sviluppo Componenti iPhone 
    ·Come creare un sito web High-Tech 
    ·Come cambiare il tipo di font tramite codice HTML 
    ·Come ridurre MPI 
    ·Come analizzare un ArrayCollection 
      Articoli in evidenza
    ·La differenza tra un Applet Java e Javascript 
    ·Come utilizzare il controllo TreeView in WPF 
    ·Come creare un Web Service per documenti XML e CSharp 
    ·Come riavviare MySQL in Plesk 
    ·L'importanza delle Strutture decisionali in Programmazi…
    ·Come Mix matrici in MATLAB 
    ·Come aggiungere un Light Show per le tue foto 
    ·Come sostituire attributi utilizzando XSL 
    ·Intestazione PE Caratteristiche DLL 
    ·CBT per Java 
    Copyright © Conoscenza Informatica http://it.wingwit.com