Search
 
 
  Engleski
 
 
 
Open in this window (click to change)
Forum@DeGiorgi: Početna
Forum za podršku nastavi na PMF-MO
Login Registracija FAQ Smajlići Članstvo Pretražnik Forum@DeGiorgi: Početna

Zadaci za vjezbu ( prvi kolokvij )
WWW:

Moja sarma
 
Započnite novu temu   Odgovorite na temu   printer-friendly view    Forum@DeGiorgi: Početna -> Kolegiji 2. godine -> Strukture podataka i algoritmi
Prethodna tema :: Sljedeća tema  
Autor/ica Poruka
CROmpir
Forumaš(ica)
Forumaš(ica)


Pridružen/a: 15. 09. 2009. (18:27:06)
Postovi: (B3)16
Sarma = la pohva - posuda
= 7 - 2

PostPostano: 16:45 sri, 12. 10. 2011    Naslov: Zadaci za vjezbu ( prvi kolokvij ) Citirajte i odgovorite

Imam jedno problem oko ovog zadatka, tocnije neznam da li me ovo trazi u zadataku te je li tocan...

3. Stringove mozemo prikazati kao vezanu listu, cije celije su zapisi sa dvije komponente: znak, pointer na iducu celiju. Napisite potrebnu definiciju tipa podatka STRING. Zatim napisite potprogram koji provjerava
da li su dva ovako implementirana stringa jednaka, i ako nisu, vraca pointer na prvu celiju u drugom stringu u kojoj se pojavljuje razlika.

[code:1]
typedef struct _string{
char element;
struct _string *next;
}string;

typedef string *STRING;
typedef string *position;

position PROVJERA ( STRING S1, STRING S2 ){
position p1, p2;

p1=FIRST(S1);
p2=FIRST(S2);

while ( p1!=END(S1) || p2!=END(S2) ){
if (RETRIEVE(p1,S1)!=RETRIEVE(p2,S2)) return p2;
p1=NEXT(p1,S1);
p2=NEXT(p2,S2);
}

if (p1==END(S1)){
p2=NEXT(p2,S2);
return p2;
}

if (p2==END(S2)){
p1=NEXT(p1,S1);
return p1;
}

}
[/code:1]

Posto nemamo demostratura, (koliko znam) zamolio bih neku dobru dusu da mi pomogne :)

Hvala!
Imam jedno problem oko ovog zadatka, tocnije neznam da li me ovo trazi u zadataku te je li tocan...

3. Stringove mozemo prikazati kao vezanu listu, cije celije su zapisi sa dvije komponente: znak, pointer na iducu celiju. Napisite potrebnu definiciju tipa podatka STRING. Zatim napisite potprogram koji provjerava
da li su dva ovako implementirana stringa jednaka, i ako nisu, vraca pointer na prvu celiju u drugom stringu u kojoj se pojavljuje razlika.

Kod:

typedef struct _string{
    char element;
    struct _string *next;
}string;

typedef string *STRING;
typedef string *position;

position PROVJERA ( STRING S1, STRING S2 ){
    position p1, p2;
   
     p1=FIRST(S1);
     p2=FIRST(S2);
       
       while ( p1!=END(S1) || p2!=END(S2) ){
            if (RETRIEVE(p1,S1)!=RETRIEVE(p2,S2)) return p2;
       p1=NEXT(p1,S1);
       p2=NEXT(p2,S2);
       }
       
       if (p1==END(S1)){
          p2=NEXT(p2,S2);
       return p2;
       }

       if (p2==END(S2)){
          p1=NEXT(p1,S1);
       return p1;
       }

}


Posto nemamo demostratura, (koliko znam) zamolio bih neku dobru dusu da mi pomogne Smile

Hvala!


[Vrh]
Korisnički profil Pošaljite privatnu poruku
vsego
Site Admin
Site Admin


Pridružen/a: 06. 10. 2002. (22:07:09)
Postovi: (355F)16
Spol: zombi
Sarma = la pohva - posuda
854 = 1068 - 214
Lokacija: /sbin/init

PostPostano: 17:07 sri, 12. 10. 2011    Naslov: Citirajte i odgovorite

[code:1] if (p2==END(S2)){
p1=NEXT(p1,S1);
return p1;
}[/code:1]

Ne vraca li ovo pointer u [b]prvom[/b] stringu?

Nadalje, fali ti [tt]return[/tt] ako ispadne da su stringovi jednaki.

Iskreno, nije mi jasno sto bi tu funkcija trebala vratiti.
Logicno je da funkcija vrati [tt]END(s2)[/tt] ako je [tt]s2[/tt] pocetni podstring od [tt]s1[/tt] (npr. [tt]s1 == "abcde"[/tt], [tt]s2 == "abc"[/tt]), no to je vjerojatno jednako [tt]NULL[/tt] -- isto sto mi se cini kao logicna povratna vrijednost i ako su stringovi leksikografski jednaki.
Kod:
       if (p2==END(S2)){
          p1=NEXT(p1,S1);
       return p1;
       }


Ne vraca li ovo pointer u prvom stringu?

Nadalje, fali ti return ako ispadne da su stringovi jednaki.

Iskreno, nije mi jasno sto bi tu funkcija trebala vratiti.
Logicno je da funkcija vrati END(s2) ako je s2 pocetni podstring od s1 (npr. s1 == "abcde", s2 == "abc"), no to je vjerojatno jednako NULL – isto sto mi se cini kao logicna povratna vrijednost i ako su stringovi leksikografski jednaki.



_________________
U pravilu ignoriram pitanja u krivim topicima i kodove koji nisu u [code]...[/code] blokovima.
Takodjer, OBJASNITE sto vas muci! "Sto mi je krivo?", bez opisa u cemu je problem, rijetko ce zadobiti moju paznju.
Drzim prodike
[Vrh]
Korisnički profil Pošaljite privatnu poruku
CROmpir
Forumaš(ica)
Forumaš(ica)


Pridružen/a: 15. 09. 2009. (18:27:06)
Postovi: (B3)16
Sarma = la pohva - posuda
= 7 - 2

PostPostano: 17:44 sri, 12. 10. 2011    Naslov: Citirajte i odgovorite

Evo ispravio sam ako sam dobro shvatio... Da pretpostavljam i ja da bi trebalo vracati NULL...

[code:1]
typedef struct _string{
char element;
struct _string *next;
}string;

typedef string *STRING;
typedef string *position;

position PROVJERA ( STRING S1, STRING S2 ){
position p1, p2;
int isti=1;

p1=FIRST(S1);
p2=FIRST(S2);

while ( p1!=END(S1) || p2!=END(S2) ){
if (RETRIEVE(p1,S1)!=RETRIEVE(p2,S2)){
isti=0;
return p2;
}
p1=NEXT(p1,S1);
p2=NEXT(p2,S2);
}

if (p1==END(S1)){
p2=NEXT(p2,S2);
return p2;
}

if (p2==END(S2)){
return NULL;
}
if (isti==1) return NULL;

}
[/code:1]

Jel sad tako u redu?

I imam pitanje jos u vezi toga, kad u zadatku napomenu da pozicije elemenata ostaju ocuvane na sto se to misli? Kod funkcija DELETE i INSERT?

hvala...
Evo ispravio sam ako sam dobro shvatio... Da pretpostavljam i ja da bi trebalo vracati NULL...

Kod:

typedef struct _string{
    char element;
    struct _string *next;
}string;

typedef string *STRING;
typedef string *position;

position PROVJERA ( STRING S1, STRING S2 ){
    position p1, p2;
    int isti=1;
   
     p1=FIRST(S1);
     p2=FIRST(S2);
       
       while ( p1!=END(S1) || p2!=END(S2) ){
            if (RETRIEVE(p1,S1)!=RETRIEVE(p2,S2)){
             isti=0;
             return p2;
            }
       p1=NEXT(p1,S1);
       p2=NEXT(p2,S2);
       }
       
       if (p1==END(S1)){
          p2=NEXT(p2,S2);
       return p2;
       }

       if (p2==END(S2)){
          return NULL;
       }
       if (isti==1) return NULL;

}


Jel sad tako u redu?

I imam pitanje jos u vezi toga, kad u zadatku napomenu da pozicije elemenata ostaju ocuvane na sto se to misli? Kod funkcija DELETE i INSERT?

hvala...


[Vrh]
Korisnički profil Pošaljite privatnu poruku
vsego
Site Admin
Site Admin


Pridružen/a: 06. 10. 2002. (22:07:09)
Postovi: (355F)16
Spol: zombi
Sarma = la pohva - posuda
854 = 1068 - 214
Lokacija: /sbin/init

PostPostano: 18:59 sri, 12. 10. 2011    Naslov: Citirajte i odgovorite

[quote="CROmpir"]Jel sad tako u redu?[/quote]

Ne znam, ja nisam s kolegija. :gg: Meni nije logicno da se isto vrati za "[tt]s2[/tt] je podstring od [tt]s1[/tt]" i za "[tt]s1 == s2[/tt]", no nemam bolju ideju kako to srediti. IMO, ako ne dobijes ovdje odgovor danas-sutra, salji mail svom asistentu.

Inace, [tt]return NULL;[/tt] implicira da je stvar realizirana preko pointera, sto bas i nije u duhu apstraktnosti strukture koju radis. Je li to problem ili nije, moras pitati nekoga s kolegija (cit. asistenta).

[quote="CROmpir"]I imam pitanje jos u vezi toga, kad u zadatku napomenu da pozicije elemenata ostaju ocuvane na sto se to misli? Kod funkcija DELETE i INSERT?[/quote]

[b]Vjerojatno[/b] da ne smijes, na primjer, posortirati. Dakle:
DELETE - oni koji prezive moraju ostati u nepromijenjenom medjusobnom poretku (dakle, samo izvadis onog kojeg brises, a druge ne diras);
INSERT - oni koji su prije ubacivanja bili u listi trebaju i nakon ubacivanja biti u istom medjusobnom poretku (dakle, novi se samo ugura izmedju njih, ali oni sami ostaju u redoslijedu u kojem su bili).
CROmpir (napisa):
Jel sad tako u redu?


Ne znam, ja nisam s kolegija. Mr Green being very Greeen indeed Meni nije logicno da se isto vrati za "s2 je podstring od s1" i za "s1 == s2", no nemam bolju ideju kako to srediti. IMO, ako ne dobijes ovdje odgovor danas-sutra, salji mail svom asistentu.

Inace, return NULL; implicira da je stvar realizirana preko pointera, sto bas i nije u duhu apstraktnosti strukture koju radis. Je li to problem ili nije, moras pitati nekoga s kolegija (cit. asistenta).

CROmpir (napisa):
I imam pitanje jos u vezi toga, kad u zadatku napomenu da pozicije elemenata ostaju ocuvane na sto se to misli? Kod funkcija DELETE i INSERT?


Vjerojatno da ne smijes, na primjer, posortirati. Dakle:
DELETE - oni koji prezive moraju ostati u nepromijenjenom medjusobnom poretku (dakle, samo izvadis onog kojeg brises, a druge ne diras);
INSERT - oni koji su prije ubacivanja bili u listi trebaju i nakon ubacivanja biti u istom medjusobnom poretku (dakle, novi se samo ugura izmedju njih, ali oni sami ostaju u redoslijedu u kojem su bili).



_________________
U pravilu ignoriram pitanja u krivim topicima i kodove koji nisu u [code]...[/code] blokovima.
Takodjer, OBJASNITE sto vas muci! "Sto mi je krivo?", bez opisa u cemu je problem, rijetko ce zadobiti moju paznju.
Drzim prodike
[Vrh]
Korisnički profil Pošaljite privatnu poruku
matmih
Forumaš(ica)
Forumaš(ica)


Pridružen/a: 07. 12. 2006. (22:57:42)
Postovi: (1A4)16
Spol: muško
Sarma = la pohva - posuda
36 = 51 - 15
Lokacija: {Zg, De , Ri}

PostPostano: 0:18 čet, 13. 10. 2011    Naslov: Citirajte i odgovorite

1) Ako je [latex] s_2 [/latex] podstring od [latex] s_1 [/latex] onda treba vratiti pointer na element u stringu [latex] s_1 [/latex] koji se razlikuje od [latex] s_2 [/latex].

To mi ima smisla (iako nisam ja sastavljao zadatak).

2) Pogledajte u skriptu:
[url=http://ilijapavlic.com/spa/Skripta.pdf]link![/url]

str. 11 i 12 pa pitajte ima li još kakvih nejasnoća oko pozicija u listama.
1) Ako je podstring od onda treba vratiti pointer na element u stringu koji se razlikuje od .

To mi ima smisla (iako nisam ja sastavljao zadatak).

2) Pogledajte u skriptu:
link!

str. 11 i 12 pa pitajte ima li još kakvih nejasnoća oko pozicija u listama.


[Vrh]
Korisnički profil Pošaljite privatnu poruku MSNM
Prethodni postovi:   
Započnite novu temu   Odgovorite na temu   printer-friendly view    Forum@DeGiorgi: Početna -> Kolegiji 2. godine -> Strukture podataka i algoritmi Vremenska zona: GMT + 01:00.
Stranica 1 / 1.

 
Forum(o)Bir:  
Ne možete otvarati nove teme.
Ne možete odgovarati na postove.
Ne možete uređivati Vaše postove.
Ne možete izbrisati Vaše postove.
Ne možete glasovati u anketama.
You cannot attach files in this forum
You can download files in this forum


Powered by phpBB © 2001, 2002 phpBB Group
Theme created by Vjacheslav Trushkin
HR (Cro) by Ančica Sečan