Datamaskin
  | Hjem | Hardware | Nettverk | Programmering | Software | Feilsøking | Systems | 
Programmering  
  • C /C + + Programming
  • Computer Programmeringsspråk
  • Delphi Programming
  • Java Programming
  • JavaScript Programmering
  • PHP /MySQL programmering
  • Perl Programming
  • Python Programming
  • Ruby Programming
  • Visual Basics Programming
  •  
    Datamaskin >> Programmering >> C /C + + Programming >> Content
    Hvordan lage et kø -funksjonen til C Syntax
    programmerere bruke køer for å representere datastrukturer som arbeider ved den først inn, først ut ( FIFO ) retningslinje. Dette betyr alle data som skrives inn i strukturen vil føye til en liste over data , og data som har vært på listen lengst vil være den første til å bli fjernet . I programmeringsspråket C , implementerer en programmerer beste en grunnleggende form av denne strukturen ved hjelp av en lenket liste og diverse pekere for å opprettholde orden på dataene . Instruksjoner
    en

    Opprett data nodestrukturen og listen struktur . For at lenket liste å fungere som en kø , må listen inneholde noder i stand til å referere til neste node i listen og to tips som referanse i begynnelsen og slutten av listen . Disse eksempel strukturer viser en grunnleggende mal for listen noder og køen struktur : en

    struct node {

    int data ;

    struct * Node neste ;
    < p > };

    struct queue_list {

    struct * node først ; //peker til det første elementet

    struct * node siste ; //peker til det siste elementet

    }
    2

    Gjennomføre en data innsetting algoritme . I en kø bør programmet alltid tilføye data til enden av listen. Videre må listen referere det siste elementet , så fremtidige innsettinger vet på hvilken ende som skal føye . Følgende eksempel viser en enkel algoritme for å føye en node med data på en kø : en

    void insert ( struct * kø q , int verdi) {

    struct * node newnode = malloc ( sizeof ( struct node ));

    newnode - > data = verdi ;

    newnode - > neste = NULL ;

    if ( q - > første == NULL) {

    q - > første = q - > siste = newnode , //​​hvis listen er tom, første og siste = newnode

    }

    else {

    q - > siste > neste = newnode ; //append newnode etter siste element

    q - > siste = siste > neste ; //point " siste " pekeren til ny node

    }

    }
    3

    Gjennomføre en fjerning algoritme . Denne algoritmen vil ta verdien fra den første node i listen . Deretter vil det peke den "første "-pekeren til den neste node , og slette den første noden. Dette vil gjøre den neste noden den nye første posisjon på listen , klar for fjerning. Følgende eksempel viser en algoritme for å oppnå dette : en

    int remove ( struct * kø q ) {

    int verdi = q- > første - > data ;

    struct * node temp = q - > første ;

    q - > første = q - > første - > next ; //flytter først pekeren til neste element

    gratis ( temp) ; //sletter den gamle første noden

    retur verdi ; //returnerer den første verdien ,

    }
    4

    Erklærer og bruke en kø . Programmereren kan erklære en kø som variabel av type " struct køen " og bruke de definerte funksjoner for å legge til og fjerne elementer . Følgende eksempel viser hvordan å erklære og bruke en kø struktur : en

    int main ( ) {

    struct kø q;

    innsats ( og q , 5 ) ; //bruksområder en referanse til "q " for å unngå grunne kopier

    innsats ( og q , 6 ) ;

    int x = fjern (& q ), //x = 5


    früher :

     Weiter:
      Relatert Artike
    ·Hvordan lenke til en CPP Fil 
    ·Slik konverterer TTF Font til PCL 
    ·Ulempene ved pekere i C 
    ·Hvordan fordele en 2D Array Pointer 
    ·Hvordan skrive en parser i C 
    ·Hvordan lage Hello World i Microsoft Visual C 2010 Expr…
    ·Hvordan bygge en Game Engine From Scratch 
    ·Hvordan koble en Progress Bar til IO.Stream 
    ·Hvordan sette den siste raden i et rutenett for å foku…
    ·Hvordan Program Game Boy Advance-spill 
      Anbefalte artikler
    ·Hvordan lage et portrett i C + + 
    ·Hvordan bruke VBA til å hente Microsoft Windows Bruker…
    ·Visual Basic for Applications for nybegynnere 
    ·Struts Vs . Hibernate 
    ·Hvordan skrive en Ruby Script 
    ·Slik sletter en streng fra en Dobbelt lenket liste i Ja…
    ·Hvordan erstatte en karakter i den JavaServer Pages 
    ·Memory Leak Detection Tools 
    ·Hvordan avslutte en ramme fra et vindu i Java 
    ·Grunnleggende Eksempler på jQuery 
    Copyright ©  Datamaskin  http://www.datamaskin.biz/