Maison > développement back-end > C++ > le corps du texte

Programme C pour trouver la longueur de la liste chaînée

PHPz
Libérer: 2023-09-07 19:33:01
avant
1026 Les gens l'ont consulté

Les listes chaînées utilisent l'allocation dynamique de mémoire, c'est-à-dire qu'elles grandissent et diminuent en conséquence. Ils sont définis comme des collections de nœuds. Ici, un nœud comporte deux parties, des données et des liens. Les données, les liens et les listes chaînées sont représentés comme suit -

Programme C pour trouver la longueur de la liste chaînée

Types de listes chaînées

Il existe quatre types de listes chaînées, comme suit : -

  • Liste chaînée simple/Liste chaînée simple
  • Chaînée double/bidirectionnelle list
  • Cycle single chaîné list
  • Cycle Double chaîné list

La logique pour nous d'utiliser la méthode récursive pour trouver la longueur de la liste chaînée est-

int length(node *temp){
   if(temp==NULL)
      return l;
   else{
      l=l+1;
      length(temp->next);
   }
}
Copier après la connexion

Programme

Ce qui suit est un programme C pour trouver le longueur de la liste chaînée-

Démonstration en direct

#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); } }

Copier après la connexion

Sortie

Lorsque le programme ci-dessus est exécuté, les éléments suivants seront générés Résultat-

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
Copier après la connexion

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
source:tutorialspoint.com
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!