ALG6

ALG6



116 Rozdział 5. Struktury danych

Iisla2.li

int alfabetycznie(ELEMENT *q],ELEMENT *q2)

{

II czy rekordy ql i q2 są uporządkowane alfabetycznie? return (ul temp(ql->nazwisko,q2->nazwisko)>=0);

I

int wq_zarobkow(ELEMENT *ql,ELEMENT *q2)

\

// czy rekordy ql i q2 sa uporządkowane wg zarobków? return (ql->zarobek>-’q2->zarobck) ;

) int equall(ELEMENT -ql,ELEMENT łq2)

(

// czy rekordy ql i q2 uiają identyczne nazwiska? return (stremp(ql->nazwiskc,q2->nazwisko)==0) ;

I

int equal2(ELEMENT *ql,ELEMENT *q2>

(

II    czy rekordy ql i q2 mają identyczne zarobki? return(ql->zarcbe)c==q2->zarobek);

)

Dwie pierwsze funkcje z powyższej listy służą do porządkowania listy, pozostałe ułatwiają proces wyszukiwania elementów. Oczywiście, w rzeczywistej aplikacji bazy danych o pracownikach analogiczne funkcje byłyby nieco bardziej skomplikowane - wszystko zależy od tego, jakie kryteria poszukiwa-nia/porządkowania zamierzamy zaprogramować oraz jak skomplikowane struktury danych wchodzą w grę.

Po tak rozbudowanych wyjaśnieniach działanie funkcji odszukaj_wsk nie powinno stanowić już dla nikogo tajemnicy.

Na stronie *>7 mieliśmy okazję zapoznać się z funkcją/msto informującą, czy lista danych coś zawiera. Nic nie stoi na przeszkodzie, aby do kompletu dołożyć jej kolejną wersję, badającą w analogiczny sposób listę wskaźników:

inline int pusta (I,PTR_rNFO *inf) f

return (inf->qlowa==NULL) ;

)

Ponieważ użyliśmy dwukrotnie tej samej nazwy funkcji, nastąpiło w tym momencie jej przeciążenie: podczas wykonywania programu właściwa jej wersja zostanie wybrana w zależności od typu parametru, z. którym zostanie wywołana (wskaźnik do struktury INFO lub wskaźnik do struktury LPTR INFO).


Wyszukiwarka

Podobne podstrony:
ALG 6 96 Rozdział 5. Struktury danych Rys. 5 - 3. FCOOh FCI4h FFEEh Przykład listy jedno-kierunk
ALG6 126 Rozdział 5. Struktury danych Rys. 5 - 12. Metoda„ tablic równoległych " (2) DANE L2
ALG 4 94 Rozdział 5. Struktury danych5.1. Listy jednokierunkowe Lista jednokierunkowa jest oszczędną
ALG 8 98 Rozdział 5. Struktury danych W następnych paragrafach zostaną przedstawione wszystkie metod
ALG2 102___Rozdział 5. Struktury danych I ELEMENT *q=inf.głowa; if (pusta()) cout << "(l
ALG4 104 Rozdział 5, Struktury danych dla danego obiektu wykonanie na sobie operacji „dekrementacji
ALG6 106 Rozdziała. Strukturydanjt 5.1 będzie ich fuzją. Rekurencyjny zapis tego procesu jest bardz
ALG8 108__Rozdział 5. Struktury danych5.1.3.Listy jednokierunkowe - teoria i rzeczywistość Oprócz p
ALG0 110 Rozdział 5. Struktury danych Rysunek 5-9 zawiera już kilka nowości w porównaniu z tym, co
ALG2 112 Rozdział 5. Struktury danych 112 Rozdział 5. Struktury danych //rekord informacyjny listy
ALG4 114 Rozdział 5. Struktury danych stan—ZAKOŃCZ; else { przcd=po; po=po->nastepny; I Różnica
ALG8 118 Rozdział 5. Struktury danych if(pŁzed==NULL) // wstawiamy na początek listy ( inf_ptr[nr].
ALG0 120 Rozdział 5. Struktury danych i if (pos!=q) rsturn(O);    II element nie
Alg0 120 Rozdział 5. Struktury danych i if (pos!=q) rsturn(O);    II element nie
ALG2 122 Rozdział 5. Struktury danych Czerniak zarabia 3000zl Wynik usunięcia rekordu pracownika za
ALG4 124 Rozdział 5. Struktury danych Co jednak z dołączaniem elementów do listy? Poniżej są omówio
ALG0 130 Rozdział 5. Struktury danych Symboliczny stos znajdujący się pod każdą z sześciu grup inst
ALG6 136 Rozdział 5. Struktury danycł forfint i=0; i<4;i+~) kolejka.wstaw(tab[i)); for(i=0;

więcej podobnych podstron