Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <stdio.h>
- #include <conio.h>
- #include <stdlib.h>
- #include <string.h>
- typedef struct nod
- {
- char *numele_varfului;
- char inaltimi_varfuri[20];
- struct nod *urm;
- } nod;
- nod *root1,*root2,*root3;
- nod *inserare_inceput(nod *lista, char numele_varfului[], char inaltimi_varfuri[])
- {
- nod *aux;
- aux=(nod *)malloc(sizeof(nod));
- aux->numele_varfului = (char *)malloc(strlen(numele_varfului)+1);
- strcpy(aux->numele_varfului,numele_varfului);
- strcpy(aux->inaltimi_varfuri, inaltimi_varfuri);
- aux->urm=lista;
- lista=aux;
- return aux;
- }
- nod *inserare_sfarsit(nod *lista, char numele_varfului[], char inaltimi_varfuri[])
- {
- nod *q;
- nod *aux;
- aux=(nod *)malloc(sizeof(nod));
- aux->numele_varfului = (char *)malloc(strlen(numele_varfului)+1);
- strcpy(aux->numele_varfului,numele_varfului);
- strcpy(aux->inaltimi_varfuri,inaltimi_varfuri);
- if (lista=NULL)
- {
- aux->urm=lista;
- lista=aux;
- aux->urm=NULL;
- }
- else
- {
- for(q=lista; q->urm != NULL; q=q->urm);
- q->urm=aux;
- aux->urm=NULL;
- }
- return lista;
- }
- nod *tehnica_2_pointeri(nod *lista, char numele_varfului[], char inaltimi_varfuri[])
- {
- nod *q1; nod *q2;nod *aux;
- aux=(nod *)malloc(sizeof(nod));
- aux->numele_varfului=(char*)malloc(strlen(numele_varfului)+1);
- strcpy(aux->numele_varfului,numele_varfului);
- strcpy(aux->inaltimi_varfuri,inaltimi_varfuri);
- for(q1=q2=lista; (q1!=NULL) && (strcmp(q1->numele_varfului,numele_varfului)<0); q2=q1,q1 = q1->urm);
- if(q2!=q1)
- {
- q2->urm=aux;
- aux->urm=q1;
- }
- else
- {
- aux->urm=q1;
- lista=aux;
- }
- return lista;
- }
- nod *stergere(nod *lista, char *numele_varfului)
- {
- nod*q1,*q2;
- for(q1=q2=lista;q1!=NULL &&strcmp(q1->numele_varfului,numele_varfului)!=0; q2=q1,q1=q1->urm);
- if((q1!=NULL) && (strcmp(q1->numele_varfului,numele_varfului)==0))
- if(q1==q2)
- {
- lista=lista->urm;
- free(q1->numele_varfului);
- free(q1);
- }
- else
- {
- q2->urm=q1->urm;
- free(q1->numele_varfului);
- free(q1);
- }
- return lista;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement