Heim  >  Artikel  >  Backend-Entwicklung  >  C-Programm zum Ermitteln der Länge einer verknüpften Liste

C-Programm zum Ermitteln der Länge einer verknüpften Liste

PHPz
PHPznach vorne
2023-09-07 19:33:011044Durchsuche

Verknüpfte Listen verwenden eine dynamische Speicherzuweisung, d. h. sie wachsen und verkleinern sich entsprechend. Sie werden als Ansammlungen von Knoten definiert. Hier besteht ein Knoten aus zwei Teilen: Daten und Links. Daten, Links und verknüpfte Listen werden wie folgt dargestellt: -

C-Programm zum Ermitteln der Länge einer verknüpften Liste

Typen verknüpfter Listen

Es gibt vier Arten verknüpfter Listen: -

  • Einfach verknüpfte Liste/Einfach verknüpfte Liste
  • Doppelt/bidirektional verknüpft Liste
  • Einzelverkettete Liste durchlaufen
  • Doppelt verknüpfte Liste durchlaufen

Die Logik für uns, die rekursive Methode zu verwenden, um die Länge der verknüpften Liste zu ermitteln, lautet:

int length(node *temp){
   if(temp==NULL)
      return l;
   else{
      l=l+1;
      length(temp->next);
   }
}

Programm

Das Folgende ist ein C-Programm zum Ermitteln der Länge der verknüpften Liste –

Live-Demonstration

#include 
#include 
typedef struct linklist{
   int data;
   struct linklist *next;
}node;
int l=0;
int main(){
   node *head=NULL,*temp,*temp1;
   int len,choice,count=0,key;
   do{
      temp=(node *)malloc(sizeof(node));
      if(temp!=NULL){
         printf("

enter the elements in a list : "); scanf("%d",&temp->data); temp->next=NULL; if(head==NULL){ head=temp; }else{ temp1=head; while(temp1->next!=NULL){ temp1=temp1->next; } temp1->next=temp; } }else{ printf("

Memory is full"); } printf("

press 1 to enter data into list: "); scanf("%d",&choice); }while(choice==1); len=length(head); printf("The list has %d no of nodes",l); return 0; } //recursive function to find length int length(node *temp){ if(temp==NULL) return l; else{ l=l+1; length(temp->next); } }

Ausgabe

Wenn das obige Programm ausgeführt wird, wird das folgende Ergebnis generiert –

Run 1:
enter the elements in a list: 3
press 1 to enter data into list: 1
enter the elements in a list: 56
press 1 to enter data into list: 1
enter the elements in a list: 56
press 1 to enter data into list: 0
The list has 3 no of nodes
Run 2:
enter the elements in a list: 12
press 1 to enter data into list: 1
enter the elements in a list: 45
press 1 to enter data into list: 0
The list has 2 no of nodes

Das obige ist der detaillierte Inhalt vonC-Programm zum Ermitteln der Länge einer verknüpften Liste. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Dieser Artikel ist reproduziert unter:tutorialspoint.com. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen