コード例 #1
0
ファイル: BST.c プロジェクト: scoiatael/ThingsIdidAtII
void wstaw(korzen *tree, str el)
{
    //printf("%d ", el);
    if((*tree)==NULL)
    {
      //  putchar('a');
        korzen nowy = malloc(sizeof(node));
        nowy->count=1;
        nowy->val=el;
        nowy->syn1=NULL;
        nowy->syn2=NULL;
        *tree = nowy;
        return;
    }
    if((*tree)->val==el)
    {
        //putchar('b');
        (*tree)->count++;
        return;
    }
    if((*tree)->val>el)
    {
        //putchar('c');
        wstaw(&((*tree)->syn1), el);
        return;
    }
    //putchar('d');
    wstaw(&((*tree)->syn2), el);
    return;
}
コード例 #2
0
int maxszer(drzewo d)
{
    kolejka kol = malloc(sizeof(Tkolejkal));
    drzewo temp;
    int max = 0, poziom = 0;
    tworzpusta(kol);
    wstaw(kol, d);
    wstaw(kol, NULL);
    while(!pusta(*kol))
    {
        pobierz(kol, &temp);
        if(temp == NULL)
        {
            if(poziom > max)
                max = poziom;
            if(poziom > 0)
                wstaw(kol, NULL);
            poziom = 0;
        }
        else
        {
            poziom++;
            if(temp->psyn != NULL)
                wstaw(kol, temp->psyn);
            if(temp->lsyn != NULL)
                wstaw(kol, temp->lsyn);
        }
    }
    free(kol);
    return max;
}
コード例 #3
0
ファイル: BST.c プロジェクト: scoiatael/ThingsIdidAtII
int main()
{
    printf("ile liczb?: ");
    int n;
    korzen t1, *tree;
    tree=malloc(sizeof(korzen));
    *tree=NULL;
    scanf("%d", &n);
    for(int i=0; i<n;i++)
    {
        int nowy;
        scanf("%d", &nowy);
        wstaw(tree, nowy);
    }
    print1(*tree);
    printf("\n");
    printf("co znalezc?:");
    int szuk;
    scanf("%d", &szuk);
    szuk=find(*tree,szuk);
    if(szuk==-1)
        printf("not found\n");
    else
        printf("wystepuje %d raz(y)", szuk);
    return 0;
}
コード例 #4
0
int main(){
	struct Korzen *k;
	tworzKorzen(&k);
	char astring[] = { "malina" };

	char bstring[] = { "arbuz" };
	char cstring[] = { "baklazan" };
	char dstring[] = { "kapusta" };
	char estring[] = { "lubczyk" };
	wstaw(astring, k);
	wstaw(bstring, k);
	wstaw(cstring, k);
	wstaw(dstring, k);
	wstaw(estring, k);
	szukaj(estring, k);
	char niema[] = { "pies" };
	szukaj(niema, k);
	printf("%d", rozmiar(k));
	free(k);
	getchar();
	return 0;
}