| 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 implementare OB di coda mediante array
    Una coda memorizza i dati in sequenza e contiene due funzioni : push e pop . Spingere posti un elemento alla fine della coda ; pop rimuove l'elemento nella parte anteriore e lo restituisce. Una coda di priorità comporta in modo simile , con una differenza: spinta aggiunge elementi alla coda in un certo ordine . Gli array non sono l'ideale per una coda di priorità , mancano di flessibilità , rendendo difficile per ordinare la coda. Tuttavia, essi sono utili per imparare il concetto . Istruzioni
    1

    Scegliere il tipo di dati la tua coda di priorità detiene . Se questa è la prima volta che scrivo una coda di priorità , scegliere qualcosa di semplice , come ad esempio un numero intero .
    2

    Creare un array da utilizzare come coda. Se il tipo di dati è intero, e si desidera mantenere 10 elementi , l'array viene creato utilizzando il codice come questo:

    int [ ] arr = new int [ 10 ] ;

    Tieni presente che 0 è il primo indice di qualsiasi matrice . Per accedere al primo indice di arr , si dovrebbe fare riferimento a arr [ 0 ] , e arr [9 ] sarebbe accedere l'ultimo indice di arr . In questo caso , arr [ 10 ] causa un errore.
    3

    Determinare la funzione di ordinamento . Esso sarà utilizzato in seguito per spingere elementi nell'ordine corretto . Questa funzione prende due ingressi , poi li confronta . Se il primo ingresso ha un valore più elevato , la funzione restituisce 1; se entrambi gli ingressi hanno lo stesso valore , restituisce 0 , e se il primo ingresso ha un valore più basso , esso restituisce -1 . Se questa è la prima volta che scrivo una funzione di ordinamento , e il tipo di dati di scelta è intero, si dovrebbe iniziare con un numero progressivo , in cui i numeri più bassi hanno un valore inferiore. Ordinamento per valore numerico , il codice sarà simile a questa :

    if ( primo > secondo) return 1;

    if ( primo == secondo) return 0;

    if ( primo < secondo) ritorna -1 ;

    Questo funziona anche per altri tipi di dati numerici , come doppie e carri allegorici . Se si utilizza stringhe , è possibile ordinare in ordine alfabetico .
    4

    Avviare la funzione di spinta . Questo richiede un ingresso , la voce di spingere sulla coda , che non visualizza nulla . In Java , se il tipo di dati è intero, il codice sarà simile a questa :

    public void push ( int a ) per

    Il codice sarà simile nella maggior parte degli altri linguaggi di programmazione , tra cui C e C + + . " Void " significa che questa funzione produrrà nulla .
    5

    Creare una matrice delle stesse dimensioni della matrice che si utilizza per la coda . Se l'array corrente può contenere 10 numeri interi , si creerà un array come questo:

    int [ ] secondArray = new int [ 10 ] ;

    Questa seconda serie diventerà poi la coda . Se l'ultima voce nel tuo array è pieno , questo significa che avete usato ogni voce nella matrice , si dovrebbe invece creare una matrice che è una voce più grande
    6

    Confronta l'ingresso di ogni voce . nella vostra matrice, a partire con la prima , utilizzando la funzione di ordinamento . Sempre fare ingresso di spinta il primo elemento che si inserisce nella funzione di ordinamento . Per confrontare ingresso di spinta e il primo elemento da arr , il codice sarà simile a questa :

    sort ( in , arr [ 0 ] ) ;

    Qui , "in" è il nome dato alla la variabile di ingresso dal punto 4

    Se restituisce -1 , mettere l'ingresso di spinta nella seconda matrice: .

    secondArray [ 0 ] = a ;

    Altrimenti , copiare il elemento dal primo array nel secondo array :

    secondArray [ 0 ] = arr [ 0 ] ;

    quindi confrontare ingresso di spinta per la voce successiva del primo array :
    < p > sort ( a , arr [ 1 ] ) ;

    continuare questo fino a quando si inserisce l'ingresso di spinta nella seconda matrice o fino a quando non ci sono più elementi nella prima matrice. In quest'ultimo caso , l'ingresso posto di spinta come l'elemento successivo nella seconda serie .
    7

    Copia il resto degli elementi del primo array nel secondo array . Ora di ingresso che di spinta è stata posta nel secondo array, non avete bisogno per la funzione di ordinamento . Da ora in poi , utilizzare il secondo array piuttosto che il primo , il primo array è ormai obsoleto. Con questo , la funzione Push è completa .
    8

    Scrivi la funzione pop . Questo richiede alcun input , ma restituisce un elemento dalla coda . Se il tipo di dati è intero, il codice sarà simile a questa :

    int pop pubblici ( ) per

    La seconda parola , "int ", significa che questa funzione viene emesso un intero < br . > Pagina 9

    Creare un secondo array delle stesse dimensioni come la matrice corrente . Quindi, copiare il secondo elemento dal primo array nella prima voce del secondo array , il terzo elemento nella seconda voce del secondo array, e così via e così via , fino a quando non ci sono più voci. Non copiare il primo elemento della prima matrice. Se l'array contiene 4 articoli , il codice sarà simile a questa :

    secondArray [ 0 ] = arr [ 1 ] ;

    secondArray [ 1 ] = arr [ 2] ;
    < p > secondArray [ 2 ] = arr [3 ] ;

    Ricordiamo che il primo indice di un array è 0 . Questo significa che secondArray [ 0 ] è il primo elemento di secondArray , e arr [1 ] è il secondo elemento di arr .
    10

    Ritorna il primo elemento della prima matrice. Il tuo codice sarà simile a questo :

    ritorno arr [ 0 ] ;

    Come con la funzione di spinta , la seconda serie è ora la tua coda. La funzione pop è ora completa .

    Previous :

    next :
      Articoli Correlati
    ·Come utilizzare ITOA in CCS 
    ·Come calcolare una percentuale Variazione SAS 
    ·Come utilizzare le stored procedure in SSRS 
    ·Sviluppo Componenti iPhone 
    ·Come unione di un array utilizzando QBasic QBasic 
    ·Che cosa è un array sparso in MATLAB 
    ·Come E Mail di un collegamento in Flash Actionscript 
    ·Come utilizzare Snippet Editor 
    ·Quali sono i vantaggi di COM + 
    ·Come moltiplicare una matrice con una variabile in MATL…
      Articoli in evidenza
    ·Come modificare un file VBS 
    ·Come selezionare i messaggi di testo in MFC 
    ·Come scrivere le funzioni di stringa in Python 
    ·Python Certificazione 
    ·Come imparare VBA per Access 
    ·Come eseguire PHP dalla riga di comando 
    ·Come rimuovere l'ultimo ottetto in Perl 
    ·Come scrivere programmi Turbo Pascal 
    ·Come visualizzare XBRL 
    ·La differenza tra un oggetto passivo e un oggetto attiv…
    Copyright © Conoscenza Informatica http://it.wingwit.com