Algoritmi sono il fondamento e il quadro di tutti i programmi per computer . Sono la sequenza di precise istruzioni a un computer per realizzare un output desiderato . Algoritmi sono ai programmi per elaboratore ciò che la mente sia per il corpo umano . Molti modelli di progettazione algoritmica o paradigmi esistenti , come gli algoritmi greedy , algoritmi divide et impera , algoritmi di programmazione dinamica e algoritmi di backtracking . Ogni classe di algoritmi ha le sue structure.Things design unico che ti serviranno

carta

Penna

Pencil

Eraser

Mostra Altre istruzioni

1 Optimization può significa selezione per aggiornare il valore di qualcosa . algoritmi

golosi sono algoritmi che forniscono le decisioni sulla base delle informazioni disponibili , senza alcuna lungimiranza . Essi funzionano meglio in problemi di ottimizzazione e sono facili da implementare . I passi generali per la loro progettazione sono :

1 . Creare una raccolta (elenco , set, ecc) dei candidati ( C )

2 . Trova un sottoinsieme ( S) dalla collezione di candidati ( C )

3 . Specificare i criteri che S deve soddisfare .

4 . Se soddisfa questi criteri ( possibile) , andare avanti per ottimizzare S

5 . Ottimizzazione S significa selezionare per minimizzare o massimizzare , a seconda del particolare problema . Nel processo si può selezionare la soluzione grande o più piccolo .

2 Tagliare il problema in sezioni più piccole , risolverli e assemblare le soluzioni .

– Divide et impera algoritmi seguono un approccio top-down in progettazione di algoritmi . Essi suddividere il problema in problemi più piccoli e infine rimontare le soluzioni ai problems.The passaggi generali dei componenti per il loro design sono :

1 . Definire il problema

2 . Creare un’istanza del problema

3 . Dividere questa istanza in piccoli sotto- istanze dello stesso problema

4 . Risolvere ciascuno dei sub- istanze di propria

5 . Integrare e combinare le soluzioni dei sottoistanze modo da ottenere una soluzione per l’istanza originale .

3

algoritmi di programmazione dinamici sono una variante dell’algoritmo divide et impera . Mentre gli algoritmi divide et impera , che sono ricorsiva seguono un approccio top-down per risolvere problemi di ottimizzazione , programmazione dinamica segue una tecnica bottom-up . I passi generali per la loro progettazione sono :

1 . Definire il problema

2 . Creare istanze del problema

3 . Costruire una tabella di tutti i sub- istanze

4 . Inizia con i più piccoli sotto- casi

5 . Continuare con l’aumento delle dimensioni sub- esempio aggiungendo i risultati di voci già calcolati

6 . Continuare fino all’ultimo sub- istanza . La soluzione finale ottenuto è la soluzione al problema inizialmente definito .

Questo metodo è iterativo mentre l’approccio divide et impera è ricorsiva .

4 algoritmi di ricerca esistenti che rendono la ricerca efficiente.

l’algoritmo backtracking ricercati sistematicamente per una soluzione di opzioni disponibili , supponendo che una soluzione esiste . I passi generali per la loro progettazione sono :

1 . Inizia con un vettore vuoto

2 . Lasciate che la soluzione rappresentata da vettori ( VI. ….. Vm )

3 . Traverse i vettori , estendendo i vettori parziali con un nuovo valore

4 . Tornate indietro se un vettore sopraelevazione rappresenta una soluzione parziale

5 . Rimuovere il valore finale del vettore

6 . Poi procedere per estendere il vettore con valori alternativi

7 . Continuare il processo fino a quando viene trovata una soluzione .