pupi (napisa): |
Kako napraviti inorder za BST koje je prikazano preko polja ? :S
I kad napravim uzlazni sort kako koresteći isto BST silazno sortitrati? |
Kod: |
void UNOS_STABLA(node i, int broj_djece, TREE *T) {
int j, djeca; labeltype label; node m, n; for(j = 1; j <= broj_djece; j++) { printf("Unesite oznaku i broj djece %d. djeteta cvora %d: ", j, i); scanf("%c %d", &label, &djeca); if(j == 1) m = INSERT_CHILD(label, i, T); else { n = INSERT_SIBLING(label, m, T); m = n; } UNOS_STABLA(m, djeca, T); } } |
PermutiranoPrase (napisa): |
Zadnji put kad sam pitala Bujanovića je rekao da se još ne zna, možda bude prije praznika, možda poslije. Valjda ćemo saznati u utorak. |
Citat: |
Implementirajte a.t.p. SET pomoću nesortirane liste (lista je implementirana pomoću polja) i pretpostavku da skupovi sadrže podatke tipa char.
Ulazni podaci: dva niza znakova koji predstavljaju elemente dvaju skupova A i B. Izlazni podaci: 5 nizova znakova, svaki u jednom redu – unija, presjek, razlika A∖ B, maximalni element skupa A; zadnji string je DA ako je A⊆ B, a NE u protivnom. Elemente skupova možete ispisati u bilo kojem redoslijedu, ali svaki se mora javljati točno jednom! Na primjer, za ulazne podatke: MIRKO SLAVKO treba ispisati: unija: RKAVILMOS presjek: OK razlika: RIM max. element prvog skupa: R podskup: NE |
Kod: |
typedef struct
{ elementtype elements[N]; int duljina; } SET; |
Kod: |
LIST L;
MAKE_NULL_LIST(&L); char rijec[100]; printf("Ulazni podatak:\n"); scanf("%s", rijec); while( rijec != "\t" ) { INSERT_LIST(rijec, END_LIST(L), &L); scanf("%s", rijec); } |
Kod: |
typedef char elementtype;
typedef struct cell_tagL { elementtype elementL; struct cell_tagL *next; } celltypeL; typedef celltypeL *LIST; typedef celltypeL *position; position END_LIST(LIST L) { position q; q = L; while(q->next != NULL) q = q->next; return q; } position MAKE_NULL_LIST(LIST *L) { *L = (celltypeL*) malloc(sizeof(celltypeL)); (*L)->next = NULL; return (*L); } void INSERT_LIST(elementtype x, position p, LIST *L) { position temp; temp = p->next; p->next = (celltypeL*) malloc(sizeof(celltypeL)); p->next->elementL = x; p->next->next = temp; } void DELETE_LIST(position p, LIST *L) { position temp; temp = p->next; p->next = p->next->next; free(temp); } position FIRST_LIST(LIST L) { return L; } position NEXT_LIST(position p, LIST L) { return p->next; } position PREVIOUS_LIST(position p, LIST L) { position q = L; while(q->next != p) q = q->next; return q; } elementtype RETRIEVE_LIST(position p, LIST L) { return p->elementL; } |
pedro (napisa): | ||
trebam upisati riječ i ubacit je u atp LIST
ovako sam ja napravila:
ne kužim zašto neće :S |
Kod: |
typedef struct { elementtype niz[MAXLENGTH]; int last; } DICTIONARY; void MAKE_NULL(DICTIONARY *R) { A->last = -1; } |
Kod: |
void INSERT(elementtype x, DICTIONARY *R) |
sasha.f (napisa): | ||
zašto javlja grešku: 'DICTIONARY' has no member named 'last'? |
Kod: |
typedef struct {
elementtype niz[MAXLENGTH]; int last; } DICTIONARY; |
Kod: |
typedef char elementtype; |
Kod: |
while(fscanf(f, "%[^\n]", rijec)>0) { INSERT(rijec, &A); fscanf(f, "\n"); } |
output generated using printer-friendly topic mod. Vremenska zona: GMT + 01:00.