Pilas

360 vues

Publié le

estructura de datos segundo parcial

Publié dans : Technologie, Design
0 commentaire
0 j’aime
Statistiques
Remarques
  • Soyez le premier à commenter

  • Soyez le premier à aimer ceci

Aucun téléchargement
Vues
Nombre de vues
360
Sur SlideShare
0
Issues des intégrations
0
Intégrations
6
Actions
Partages
0
Téléchargements
5
Commentaires
0
J’aime
0
Intégrations 0
Aucune incorporation

Aucune remarque pour cette diapositive

Pilas

  1. 1. #include <stdio.h> //for print<br />#include <stdlib.h>//for malloc<br />typedef struct ns {<br /> int data;<br /> struct ns *next;<br />} node;<br />node *list_add(node**p, int i) {<br /> //algunos compiladores no requieren un casting del valor del retorno para malloc<br /> node *n = (node *)malloc(sizeof(node));<br /> if (n== NULL)<br /> return NULL;<br /> n-> next = *p;<br /> *p = n;<br /> n->data = i;<br /> return n;<br />}<br />void list_remove(node**p) { //borrar cabeza<br /> if (*p !=NULL) {<br /> node *n = *p;<br /> *p = (*p)->next;<br /> free(n);<br /> }<br /> }<br /> node **list_searc(node **n, int i) {<br /> while (*n !=NULL) {<br /> return n;<br /> }<br /> n = &(*n)->next;<br /> }<br /> return NULL;<br /> }<br /> void list_print(node *n) {<br /> if (n ==NULL) {<br /> PRINTF("lista esta vacia =n");//FALTA DATO<br /> }<br /> while (n !=NULL) {<br /> PRINTF("print %p %p %d%n", N, ,->NEXT, N->DATA);//FALTA DATO<br /> n = n->next;<br /> }<br /> }<br /> int main(void) {<br /> node *n = NULL;<br /> <br /> list_add(&n, 0); //lista: 0<br /> list_add(&n, 1); //lista: 1 0<br /> list_add(&n, 2); //lista: 2 1 0<br /> list_add(&n, 3); //lista: 3 2 1 0<br /> list_add(&n, 4); //lista: 4 3 2 1 0<br /> list_print(n);<br /> list_remove(&n->next);<br /> list_remove(list_search(&n, !));//en duda el dato<br /> list_remove(&n->next);<br /> list_remove(&n);<br /> list_print(n);<br /> <br /> return 0;<br /> }<br />

×