Yazar |
|
ataryemez
Ankara
Kayıt: 18.06.2007 |
|
emin misin peki.ve diyelim en soldakini çektik.onun yanında iki tane daha sayı var.sadaki iki elemanı neye göre sıralıyoruz biri bana örnekle anlatsın lütfen bi o noktayı anlasam
every man dies, not every man really lives
|
|
Yazar |
|
audtou
malatya
Kayıt: 31.08.2006 |
|
ataryemez yazdi | emin misin peki.ve diyelim en soldakini çektik.onun yanında iki tane daha sayı var.sadaki iki elemanı neye göre sıralıyoruz biri bana örnekle anlatsın lütfen bi o noktayı anlasam |
elimde 1 tane örnek var ondada harfler var yani büyüklük küçüklük sıralaması yapılamıyo onun için kalan 2 taneyide çektigin düğümün sağına yerleştiriyosun.
ancak tam emin degilim onu soyliyim
hatalysam düzeltin
bitiyo lan!
|
|
Yazar |
|
audtou
malatya
Kayıt: 31.08.2006 |
|
sınav sorusu şöyle olabilir
c nin soluna b
b nin sagına a
a nın sağına d
a nın soluna f
f nin sağına I
I nın sağına g
d nin soluna h
h nin sağına e
e nin soluna j
j nin sagına k
bitiyo lan!
|
|
Yazar |
|
antirunje
Kayıt: 16.11.2006 |
|
Arkadaşlar vizenin 5. sorusunu yapabilen var mı acaba? (Hafızada önceden oluşturulmuş bir graf üzerindeki herhangi iki düğüm arasında bir yol olup olmadığını bulan C program rutini)
Eger ac ve kimsesiz bir kopegi alip bakar ve rahata kavusturursaniz sizi isirmaz. Insan ve kopek arasindaki temel fark budur.
|
|
Yazar |
|
akgulozkan
istanbul
Kayıt: 12.12.2006 |
|
antirunje yazdi | Arkadaşlar vizenin 5. sorusunu yapabilen var mı acaba? (Hafızada önceden oluşturulmuş bir graf üzerindeki herhangi iki düğüm arasında bir yol olup olmadığını bulan C program rutini) |
graf sorusu yok die biliyorum..
|
|
Yazar |
|
antirunje
Kayıt: 16.11.2006 |
|
akgulozkan yazdi | antirunje yazdi | Arkadaşlar vizenin 5. sorusunu yapabilen var mı acaba? (Hafızada önceden oluşturulmuş bir graf üzerindeki herhangi iki düğüm arasında bir yol olup olmadığını bulan C program rutini) |
graf sorusu yok die biliyorum.. |
Dikkat etmemişim, çok teşekkür ederim.
Eger ac ve kimsesiz bir kopegi alip bakar ve rahata kavusturursaniz sizi isirmaz. Insan ve kopek arasindaki temel fark budur.
|
|
Yazar |
|
altuko
banlandı
Kayıt: 05.02.2006 |
|
indigestible yazdi | 2li ağaçtan tek bağlıya
çift bağlıdan tek bağlıya
tek bağlıdan çift bağlıya(vize)
önceden oluşturulan kuyruktaki elemanları 2li ağaca yerleştiren(vize)
bu programlar elinde olan vea yapabilen war mıı?? |
Ağaçtan tek bağlıya,ama sıralı yapmadım...
#include <stdio.h>
#include <stdlib.h>
struct ListNode
{
int data;
struct ListNode *nextPtr;
};
typedef struct ListNode ListNode;
typedef ListNode *ListNodePtr;
struct treeNode {
struct treeNode *leftPtr;
int data;
struct treeNode *rightPtr;
};
typedef struct treeNode TreeNode;
typedef TreeNode *TreeNodePtr;
void insertTree(TreeNodePtr *treePtr,int data)
{
if((*treePtr == NULL))
{
(*treePtr) = (TreeNodePtr)malloc(sizeof(TreeNode));
(*treePtr)->data = data;
(*treePtr)->leftPtr = NULL;
(*treePtr)->rightPtr = NULL;
}
else
{
if((data > (*treePtr)->data))
insertTree(&((*treePtr)->rightPtr),data);
else
insertTree(&((*treePtr)->leftPtr),data);
}
}
void insertListNode(ListNodePtr *startPtr,int data)
{
if((*startPtr) == NULL)
{
(*startPtr) = (ListNodePtr)malloc(sizeof(ListNode));
(*startPtr)->data = data;
(*startPtr)->nextPtr = NULL;
}
else
insertListNode(&((*startPtr)->nextPtr),data);
}
void printTree(TreeNodePtr treePtr)
{
if(treePtr != NULL)
{
printf("%d->",treePtr->data);
printTree(treePtr->leftPtr);
printTree(treePtr->rightPtr);
}
}
void treeToList(TreeNodePtr treePtr,ListNodePtr *startPtr)
{
if(treePtr != NULL)
{
insertListNode(startPtr,treePtr->data);
treeToList(treePtr->leftPtr,startPtr);
treeToList(treePtr->rightPtr,startPtr);
}
}
void printList(ListNodePtr listPtr)
{
if(listPtr != NULL)
{
printf("%d->",listPtr->data);
printList(listPtr->nextPtr);
}
}
int main()
{
TreeNodePtr kokPtr = NULL;
ListNodePtr startPtr = NULL;
int kayitSayisi;
int eleman;
printf("Kayit sayisini giriniz....
");
scanf("%d",&kayitSayisi);
flushall();
for(int i=0;i<kayitSayisi;i++)
{
printf("%d->eleman
",i+1);
scanf("%d",&eleman);
flushall();
insertTree(&kokPtr,eleman);
}
printTree(kokPtr);
printf("NULL");
printf("
*************************
");
treeToList(kokPtr,&startPtr);
printList(startPtr);
printf("NULL");
printf("
");
return 0;
}
|
|
Yazar |
|
altuko
banlandı
Kayıt: 05.02.2006 |
|
indigestible yazdi | 2li ağaçtan tek bağlıya
çift bağlıdan tek bağlıya
tek bağlıdan çift bağlıya(vize)
önceden oluşturulan kuyruktaki elemanları 2li ağaca yerleştiren(vize)
bu programlar elinde olan vea yapabilen war mıı?? |
Tek bağlıdan çift bağlıya......
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
struct TekBagli
{
char name[20];
struct TekBagli *next;
};
struct CiftBagli
{
char name[20];
struct CiftBagli *next;
struct CiftBagli *before;
};
typedef struct TekBagli Tekbagli;
typedef struct TekBagli* TekBagliPtr;
typedef struct CiftBagli CiftBagli;
typedef struct CiftBagli* CiftBagliPtr;
void insertTekBagli(TekBagliPtr *tekStart,char *Tname)
{
if((*tekStart) == NULL)
{
(*tekStart) = (TekBagliPtr)malloc(sizeof(TekBagli));
strcpy((*tekStart)->name,Tname);
(*tekStart)->next = NULL;
}
else
insertTekBagli(&((*tekStart)->next),Tname);
}
void printTekBagli(TekBagliPtr tekStart)
{
if(tekStart != NULL)
{
printf("%s->",tekStart->name);
printTekBagli(tekStart->next);
}
}
void printCiftBagli(CiftBagliPtr ciftStart)
{
if(ciftStart != NULL)
{
printf("%s->",ciftStart->name);
printCiftBagli(ciftStart->next);
}
}
void insertCiftBagli(CiftBagliPtr *ciftStart,char *Cname)
{
CiftBagliPtr currentPtr,previousPtr,newPtr;
newPtr = (CiftBagliPtr)malloc(sizeof(CiftBagli));
strcpy(newPtr->name,Cname);
currentPtr = (*ciftStart);
previousPtr = NULL;
while(currentPtr != NULL &&(strcmp(currentPtr->name,Cname) < 0) )
{
previousPtr = currentPtr;
currentPtr = currentPtr->next;
}
if(previousPtr == NULL)
{
(*ciftStart) = newPtr;
newPtr->next = currentPtr;
newPtr->before = NULL;
}
else
{
previousPtr->next = newPtr;
newPtr->before = previousPtr;
newPtr->next = currentPtr;
if(currentPtr != NULL)
currentPtr->before = newPtr;
}
}
void tekToCift(TekBagliPtr *tekStart,CiftBagliPtr *ciftStart)
{
TekBagliPtr currentPtr,temp;
char name[20];
currentPtr = (*tekStart);
while(currentPtr != NULL)
{
strcpy(name,currentPtr->name);
insertCiftBagli(ciftStart,name);
temp = currentPtr;
currentPtr = currentPtr->next;
free(temp);
}
}
int main()
{
TekBagliPtr tekStart = NULL;//tek bağlı listenin başlangıç adresi...
CiftBagliPtr ciftStart = NULL;
int kayitSayisi;
char ad[20];
printf("Kac tane kayit girmek istiyorsunuz....
");
scanf("%d",&kayitSayisi);
flushall();
for(int i = 0;i < kayitSayisi;i++)
{
printf("%d-->isim..
",i+1);
gets(ad);
flushall();
insertTekBagli(&tekStart,ad);
}
printf("
***************************
");
printTekBagli(tekStart);
printf("NULL");
printf("
****************************
");
tekToCift(&tekStart,&ciftStart);
// printTekBagli(tekStart);
printf("
****************************
");
printCiftBagli(ciftStart);
printf("NULL");
return 0;
}
|
|
Yazar |
|
indigestible
Kayıt: 27.01.2007 |
|
ya çok saoool walla..süpersin..
çok olcam ama 1şi daa rica etsem..
2li ağaçtan çift bağlıa nası oluo??
altuko yazdi | indigestible yazdi | 2li ağaçtan tek bağlıya
çift bağlıdan tek bağlıya
tek bağlıdan çift bağlıya(vize)
önceden oluşturulan kuyruktaki elemanları 2li ağaca yerleştiren(vize)
bu programlar elinde olan vea yapabilen war mıı?? |
Tek bağlıdan çift bağlıya......
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
struct TekBagli
{
char name[20];
struct TekBagli *next;
};
struct CiftBagli
{
char name[20];
struct CiftBagli *next;
struct CiftBagli *before;
};
typedef struct TekBagli Tekbagli;
typedef struct TekBagli* TekBagliPtr;
typedef struct CiftBagli CiftBagli;
typedef struct CiftBagli* CiftBagliPtr;
void insertTekBagli(TekBagliPtr *tekStart,char *Tname)
{
if((*tekStart) == NULL)
{
(*tekStart) = (TekBagliPtr)malloc(sizeof(TekBagli));
strcpy((*tekStart)->name,Tname);
(*tekStart)->next = NULL;
}
else
insertTekBagli(&((*tekStart)->next),Tname);
}
void printTekBagli(TekBagliPtr tekStart)
{
if(tekStart != NULL)
{
printf("%s->",tekStart->name);
printTekBagli(tekStart->next);
}
}
void printCiftBagli(CiftBagliPtr ciftStart)
{
if(ciftStart != NULL)
{
printf("%s->",ciftStart->name);
printCiftBagli(ciftStart->next);
}
}
void insertCiftBagli(CiftBagliPtr *ciftStart,char *Cname)
{
CiftBagliPtr currentPtr,previousPtr,newPtr;
newPtr = (CiftBagliPtr)malloc(sizeof(CiftBagli));
strcpy(newPtr->name,Cname);
currentPtr = (*ciftStart);
previousPtr = NULL;
while(currentPtr != NULL &&(strcmp(currentPtr->name,Cname) < 0) )
{
previousPtr = currentPtr;
currentPtr = currentPtr->next;
}
if(previousPtr == NULL)
{
(*ciftStart) = newPtr;
newPtr->next = currentPtr;
newPtr->before = NULL;
}
else
{
previousPtr->next = newPtr;
newPtr->before = previousPtr;
newPtr->next = currentPtr;
if(currentPtr != NULL)
currentPtr->before = newPtr;
}
}
void tekToCift(TekBagliPtr *tekStart,CiftBagliPtr *ciftStart)
{
TekBagliPtr currentPtr,temp;
char name[20];
currentPtr = (*tekStart);
while(currentPtr != NULL)
{
strcpy(name,currentPtr->name);
insertCiftBagli(ciftStart,name);
temp = currentPtr;
currentPtr = currentPtr->next;
free(temp);
}
}
int main()
{
TekBagliPtr tekStart = NULL;//tek bağlı listenin başlangıç adresi...
CiftBagliPtr ciftStart = NULL;
int kayitSayisi;
char ad[20];
printf("Kac tane kayit girmek istiyorsunuz....
");
scanf("%d",&kayitSayisi);
flushall();
for(int i = 0;i < kayitSayisi;i++)
{
printf("%d-->isim..
",i+1);
gets(ad);
flushall();
insertTekBagli(&tekStart,ad);
}
printf("
***************************
");
printTekBagli(tekStart);
printf("NULL");
printf("
****************************
");
tekToCift(&tekStart,&ciftStart);
// printTekBagli(tekStart);
printf("
****************************
");
printCiftBagli(ciftStart);
printf("NULL");
return 0;
}
|
|
|
Yazar |
|
altuko
banlandı
Kayıt: 05.02.2006 |
|
indigestible yazdi | 2li ağaçtan tek bağlıya
çift bağlıdan tek bağlıya
tek bağlıdan çift bağlıya(vize)
önceden oluşturulan kuyruktaki elemanları 2li ağaca yerleştiren(vize)
bu programlar elinde olan vea yapabilen war mıı?? |
Kuyruktan ikili ağaca....
#include <stdio.h>
#include <stdlib.h>
struct Kuyruk
{
int data;
struct Kuyruk *next;
};
typedef struct Kuyruk Kuyruk;
typedef Kuyruk *KuyrukPtr;
struct treeNode {
struct treeNode *leftPtr;
int data;
struct treeNode *rightPtr;
};
typedef struct treeNode TreeNode;
typedef TreeNode *TreeNodePtr;
void insertTree(TreeNodePtr *treePtr,int data)
{
if((*treePtr == NULL))
{
(*treePtr) = (TreeNodePtr)malloc(sizeof(TreeNode));
(*treePtr)->data = data;
(*treePtr)->leftPtr = NULL;
(*treePtr)->rightPtr = NULL;
}
else
{
if((data > (*treePtr)->data))
insertTree(&((*treePtr)->rightPtr),data);
else
insertTree(&((*treePtr)->leftPtr),data);
}
}
void printTree(TreeNodePtr treePtr)
{
if(treePtr != NULL)
{
printf("%d->",treePtr->data);
printTree(treePtr->leftPtr);
printTree(treePtr->rightPtr);
}
}
void SirayaGir(KuyrukPtr *bas,KuyrukPtr *son,int data)
{
KuyrukPtr newPtr;
newPtr = (KuyrukPtr)malloc(sizeof(Kuyruk));
newPtr->data = data;
newPtr->next = NULL;
if((*bas) == NULL)
{
(*bas) = newPtr;
(*son) = newPtr;
}
else
(*son)->next = newPtr;
(*son) = newPtr;
}
int SiradanCik(KuyrukPtr *bas,KuyrukPtr *son)
{
int data;
KuyrukPtr tempPtr;
data = (*bas)->data;
tempPtr = (*bas);
(*bas) = (*bas)->next;
if((*bas) == NULL)
(*son) = NULL;
free(tempPtr);
return data;
}
void printKuyruk(KuyrukPtr tempPtr)
{
if(tempPtr != NULL)
{
printf("%d->",tempPtr->data);
printKuyruk(tempPtr->next);
}
}
void kuyrukToTree(KuyrukPtr *bas,KuyrukPtr *son,TreeNodePtr *treePtr)
{
KuyrukPtr currentPtr;
int data;
currentPtr = (*bas);
while(currentPtr != NULL)
{
data = SiradanCik(bas,son);
insertTree(treePtr,data);
currentPtr = (*bas);
}
}
int main()
{
TreeNodePtr kokPtr = NULL;
KuyrukPtr bas = NULL;
KuyrukPtr son = NULL;
int kayitSayisi;
int eleman;
printf("Elaman sayisi...
");
scanf("%d",&kayitSayisi);
flushall();
for(int i=0;i<kayitSayisi;i++)
{
printf("%d->eleman
",i+1);
scanf("%d",&eleman);
flushall();
SirayaGir(&bas,&son,eleman);
}
printf("
********************************
");
printKuyruk(bas);
printf("
********************************
");
kuyrukToTree(&bas,&son,&kokPtr);
printTree(kokPtr);
printf("
********************************
");
return 0;
}
|
|
Yazar |
|
altuko
banlandı
Kayıt: 05.02.2006 |
|
Bu da ikili ağaçtan çift bağlıya...
#include <stdio.h>
#include <stdlib.h>
struct ListNode
{
int veri;
struct ListNode *next;
struct ListNode *before;
};
typedef struct ListNode ListNode;
typedef struct ListNode* ListNodePtr;
struct treeNode {
struct treeNode *leftPtr;
int data;
struct treeNode *rightPtr;
};
typedef struct treeNode TreeNode;
typedef TreeNode *TreeNodePtr;
void insertTree(TreeNodePtr *treePtr,int data)
{
if((*treePtr == NULL))
{
(*treePtr) = (TreeNodePtr)malloc(sizeof(TreeNode));
(*treePtr)->data = data;
(*treePtr)->leftPtr = NULL;
(*treePtr)->rightPtr = NULL;
}
else
{
if((data > (*treePtr)->data))
insertTree(&((*treePtr)->rightPtr),data);
else
insertTree(&((*treePtr)->leftPtr),data);
}
}
void printTree(TreeNodePtr treePtr)
{
if(treePtr != NULL)
{
printf("%d->",treePtr->data);
printTree(treePtr->leftPtr);
printTree(treePtr->rightPtr);
}
}
void insertList(ListNodePtr *startPtr,int data)
{
ListNodePtr currentPtr,previousPtr;
ListNodePtr newPtr;
newPtr = (ListNodePtr)malloc(sizeof(ListNode));
newPtr->veri = data;
currentPtr = (*startPtr);
previousPtr = NULL;
while(currentPtr != NULL && currentPtr->veri < data)
{
previousPtr = currentPtr;
currentPtr = currentPtr->next;
}
if(previousPtr == NULL)
{
newPtr->next = (*startPtr);
newPtr->before = NULL;
(*startPtr) = newPtr;
}
else
{
newPtr->next = currentPtr;
newPtr->before = previousPtr;
previousPtr->next = newPtr;
if(currentPtr != NULL)
currentPtr->before = newPtr;
}
}
void printList(ListNodePtr startPtr)
{
while(startPtr != NULL)
{
printf("%d->",startPtr->veri);
startPtr = startPtr->next;
}
printf("
*****************************
");
}
void treeToList(TreeNodePtr treePtr,ListNodePtr *startPtr)
{
if(treePtr != NULL)
{
insertList(startPtr,treePtr->data);
treeToList(treePtr->leftPtr,startPtr);
treeToList(treePtr->rightPtr,startPtr);
}
}
int main()
{
TreeNodePtr kokPtr = NULL;
ListNodePtr startPtr = NULL;
int kayitSayisi;
int eleman;
printf("Elaman sayisi...
");
scanf("%d",&kayitSayisi);
flushall();
for(int i=0;i<kayitSayisi;i++)
{
printf("%d->eleman
",i+1);
scanf("%d",&eleman);
flushall();
insertTree(&kokPtr,eleman);
}
printf("
********************************
");
printTree(kokPtr);
printf("
********************************
");
treeToList(kokPtr,&startPtr);
printf("
********************************
");
printList(startPtr);
return 0;
}
|
|
Yazar |
|
indigestible
Kayıt: 27.01.2007 |
|
çooook teşekkürleeerrr!!
çift bağlı listeden tek bağlıya olanı da koyabilirsen daa da süper olcak..
ya gerçekten çok saol..geçersem sayende geçicem heralde;)
|
|
Yazar |
|
tuuba
Bursa
Kayıt: 22.01.2007 |
|
altuko yazdi
Çok teşekkürler....
|
|
Yazar |
|
ozerozkn
banlandı
Kayıt: 12.02.2006 |
|
altuko süpersin ya
|
|
|
|
-
Del.icio.us
-
Digg
-
Facebook
-
Furl
-
Google
-
Blink
-
Simpy
-
Spurl
-
Y! MyWeb
|
|
| | | | | | | | | | |