[ mimi034 @ 20.01.2009. 12:26 ] @
Imam f-ju za upis matrica preko dvostruko povezanih listi: Code: Cvor *upis(Cvor *koren) { int n,m,i,j; int k; Cvor *novi,*p,*q,*r; printf(" Broj vrsta matrice "); scanf("%d",&n); printf(" Broj kolona matrice "); scanf("%d",&m); printf("\n"); koren=NULL; printf(" Elementi matrice\n\n"); for(i=1;i<=n;i++) { for(j=1;j<=m;j++) { printf("Unesi element [%d,%d]=",i,j); scanf("%d",&k); novi=(Cvor*)malloc(sizeof(Cvor)); novi->vrednost=k; novi->desno=NULL; novi->levo=NULL; if(i==1&&j==1){ koren=novi; p=q=r=koren; } if(i==1&&j==1)continue; if((j!=1)&&(i==1)){ p->desno=novi; p=p->desno; } if((j==1)&&(i>1)){ r->levo=novi; q=r->desno; r=r->levo; p=r; } if((j!=1)&&(i>1)) { q->levo=novi; q=q->desno; p->desno=novi; p=p->desno; } } } return koren; } e,sad mi nije bas jasno,sta koji pokazivac radi? (to i jeste pitanje) p-ide desno kroz vrstu; r-ide kroz kolonu, a sta radi q? Molim za pomoc i pojasnjenje kako radi ova f-ja. Unapred hvala |