Køen er en metode programmerere bruke til å lagre data . En kø er en sekvens av data som følger regelen " først inn, først ut ". Den har en front og en rygg . Varene legges i ryggen og fjernet fra forsiden. Det er veldig mye som en linje av mennesker venter på en bank teller . En god måte å øve på C + + programmering ferdigheter er å skrive et program som reverserer en kø . Du trenger
C + + Integrated Development Environment ( IDE ), for eksempel Eclipse CDT
C + + Compiler , som GCC
Vis flere instruksjoner
en
Load den C IDE ved å klikke på programmets ikon. Når den åpnes, velger du "Fil /Ny /Project" og velg "C Project" for å opprette en ny C-prosjekt . En tom kildekoden filen vises i teksteditoren delen av IDE .
2
Import bibliotekene " iostream ", " kø " og " cstdio " ved å skrive inn følgende linjer med kode på toppen av kildekoden filen:
# include
# include
# include
bruker namespace std ;
3
Lag en funksjon som vil reversere innholdet i køen. Funksjonen vil ta to argumenter: køen du ønsker å reversere , og en kø som vil lagre reverserte innholdet . Du kan kalle disse køene " forover " og " baklengs ", henholdsvis . Å erklære funksjonen , skriver følgende kodelinje : en
void qReverse ( kø fremover , kø & bakover ) { }
4
Lag en " hvis "statement innenfor klammeparentes av" qReverse "-funksjonen . Denne " hvis " statement vil utføre når " forover " køen inneholder elementer :
if ( forwards.size ( ) > = 1 ) { }
5
Erklærer en int variabel heter " x " og tilordne den første verdien av " forwards " køen , ved å skrive følgende linje innenfor klammeparentes av " hvis " statement : en
int x = forwards.front ();
6
Fjern det første elementet fra " forover " køen ved å skrive følgende linje, igjen innen klammeparentesene av " hvis " statement : en
forwards.pop ();
7
Lag en rekursiv kall til funksjonen qReverse . Rekursive funksjonskall oppstå når du utfører en funksjon fra i seg selv. Ved å ringe qReverse rekursivt , vil du laste opp " baklengs" køen i omvendt rekkefølge av " forover " køen . Skriv følgende uttalelse innenfor de klammeparentes av " hvis " statement : en
qReverse ( forover, bakover ) ;
8
Skyv elementet lagret i variabelen "x " i baklengs køen. Fordi denne uttalelsen oppstår etter den rekursive funksjon samtale , er det siste elementet av " forwards " køen presset inn i " baklengs" kø først. Skriv følgende uttalelse innenfor de klammeparentes av " hvis " statement : en
backwards.push ( x ) ;
9
Lag en hovedfunksjon etter " }" brakett av både "hvis " statement og " qReverse "-funksjonen . Syntaksen ser slik ut : en
int main ( ) { }
10
Erklærer to køer : " forwardsQueue " og " backwardsQueue ", ved å skrive følgende i løpet av de krøllete parentes i Hovedfunksjonen : en
kø forwardsQueue , backwardsQueue ;
11
Legge til elementer i " forwardsQueue " ved å skrive følgende utsagn innenfor klammeparentes av de viktigste funksjon:
forwardsQueue.push ( 1 ) ;
forwardsQueue.push ( 2 ) ;
forwardsQueue.push ( 3 ) ;
12
Lag en funksjon ringe til " qReverse , " og send det " forwardsQueue " og " backwardsQueue ", ved å skrive følgende i løpet av de krøllete parentes av den viktigste funksjonen : en
qPop ( forwardsQueue , backwardsQueue ) ;
13
Print ut innholdet i " backwardsQueue " ved å skrive følgende utsagn , igjen i løpet av de krøllete parentes av den viktigste funksjonen : en
while ( backwardsQueue.size ( ) )
{domstol << backwardsQueue.front ( ) << endl; backwardsQueue.pop (); }
14
kompilere og kjøre programmet ved å trykke på den grønne piltasten ligger i øverste knapperad på IDE . Programmet skriver ut innholdet i " backwardsQueue ", som ser slik ut : en
3
2
en