Professional Documents
Culture Documents
Listat e Lidhura
Listat e Lidhura
-----------------------------------------------------------------------------------
---------
Ushtrimi 1
#include <stdio.h>
#include <stdlib.h>
struct nyje{
int vl;
/*
char[20] emri;
char * mbiemri;
int mosha;
int notat[21];
*/
struct nyje * pas;
//struct nyje * para;
};
//funksionet qe do ndertojme
struct nyje * krijoNyje(int vlera){
struct nyje * eliri;
eliri=(struct nyje *)malloc(sizeof(struct nyje));
eliri->vl=vlera;
eliri->pas=NULL;
//eliri->para=NULL;
}
tmp->pas=NULL;
return NULL;
}
struct nyje * hiqPozicion(struct nyje * fillimi, int poz){
if(fillimi==NULL){
printf("Asnje element nuk mund te hiqet nga lista. Lista eshte bosh.\n");
return NULL;
}
if(poz==1){
fillimi=fillimi->pas;
return fillimi;
}
struct nyje * tmp=fillimi;
int i=1;
while (i<=poz-2&&tmp->pas!=NULL){
tmp=tmp->pas;
i++;
}
if(tmp->pas==NULL){
printf("Pozicioni nuk eshte i sakte\n");
return fillimi;
}
tmp->pas=tmp->pas->pas;
return fillimi;
}
if(tmp->pas==NULL){
printf("Vlera nuk gjendet ne liste\n");
return fillimi;
}
tmp->pas=tmp->pas->pas;
return fillimi;
}
if(poz==1){
eliri->pas=fillimi;
fillimi=eliri;
return fillimi;
}
if(tmp->pas==NULL&&i!=poz-1){
printf("Pozicioni nuk eshte i sakte\n");
return fillimi;
}
eliri->pas=tmp->pas;
tmp->pas=eliri;
}
int s=0,nr=0,nr_neg=0;
while (tmp!=NULL){
s=s+tmp->vl;
nr++;
if(tmp->vl<0)
nr_neg++;
tmp=tmp->pas;
}
printf("\n");
afishoListe(koka);
afishoListe(kokaF);
koka=hiqVleraNjeHere(koka,3);
afishoListe(koka);
/*
for(struct nyje * tmp=koka;tmp!=NULL;tmp=tmp->pas){
printf("%d ",tmp->vl);
}
*/
printf("Shuma %d\n",s);
printf("Numri elementeve %d\n",nr);
printf("Numri elementeve negative %d\n",nr_neg);
return 0;
}
-----------------------------------------------------------------------------------
-------
Ushtrimi 2
#include <stdio.h>
#include <stdlib.h>
struct nyje{
int vl;
struct nyje * pas;
} ;
q->pas=eliri;
return koka;
}
if(poz==1){
struct nyje * eliri;
eliri = (struct nyje *) malloc( sizeof(struct nyje) );
eliri->vl=vlere;
eliri->pas=koka;
koka=eliri;
}
else{
int i=1;
struct nyje * p=koka;
while(p->pas!=0 && i<poz-1){
//printf("%d ",p->vl);
p=p->pas;
i++;
}
struct nyje * eliri;
eliri = (struct nyje *) malloc( sizeof(struct nyje) );
eliri->vl=vlere;
eliri->pas=p->pas;
p->pas=eliri;
}
return koka;
}
int main(){
int n;
struct nyje * koka;
return 0;
}
-----------------------------------------------------------------------------------
-------
Lista dydrejtimore
#include<stdio.h>
#include<conio.h>
#include<stdlib.h>
struct nyje{
int vl;
struct nyje * pas;
struct nyje * para;
};
if(p->pas==NULL){
p->para->pas=NULL;
return koka;
}
p->para->pas=p->pas;
p->pas->para=p->para;
return koka;
}
int main(){
struct nyje * Lista1=NULL;
struct nyje * Lista2=NULL;
Lista1=shtoElFillim(Lista1,5);
Lista1=shtoElFillim(Lista1,7);
Lista1=shtoElFillim(Lista1,10);
Lista2=shtoElFund(Lista2,15);
Lista2=shtoElFund(Lista2,0);
Lista2=shtoElFund(Lista2,3);
afisho(Lista1);
afisho(Lista2);
printf("Shuma e listes se pare: %d\n",shuma(Lista1));
printf("Shuma e listes se dyte: %d\n",shuma(Lista2));
return 0;
}