Algorytmy. i podstawy programowania. eci. Proste algorytmy sortowania tablic. 4. Wskaźniki i dynamiczna alokacja pami

Wielkość: px
Rozpocząć pokaz od strony:

Download "Algorytmy. i podstawy programowania. eci. Proste algorytmy sortowania tablic. 4. Wskaźniki i dynamiczna alokacja pami"

Transkrypt

1 MAREK GAGOLEWSKI INSTYTUT BADAŃ SYSTEMOWYCH PAN Algorytmy podstawy programowana 4. Wskaźnk dynamczna alokaca pam ec. Proste algorytmy sortowana tablc Matera ly dydaktyczne dla studentów matematyk na Wydzale Matematyk Nauk Informacynych Poltechnk Warszawske Ostatna aktualzaca: 5 grudna 2012 r. Copyrght Dr Marek G agolewsk Ths work s lcensed under a Creatve Commons Attrbuton 3.0 Unported Lcense.

2 SPIS TREŚCI 0 Sps treśc 4.1. Dynamczna alokaca pamec Organzaca pamec komputera Wskaźnk Przydza l zwalnane pamec ze sterty Tablce Przekazywane tablc funkcom Proste algorytmy sortowana tablc Sortowane przez wybór Sortowane przez wstawane Sortowane babelkowe Efektywność oblczenowa Informaca Nnesze matera ly dydaktyczne wcaż sa daleke od doskona lośc. Jeśl znadzesz w nch b l edy, czegoś ne rozumesz, badź uważasz, że pomna lem coś stotnego, bardzo Ce prosze o stosowna nformace na mó adres e-mal: M.Gagolewsk@mn.pw.edu.pl. Dzeku e. Ostatna aktualzaca: 5 grudna 2012 r.

3 4.1. DYNAMICZNA ALOKACJA PAMIECI Dynamczna alokaca pam ec Organzaca pam ec komputera W drugm rozdzale skryptu dowedzelśmy se, że w pamec operacyne komputera przechowywane sa ne tylko dane, ale kod maszynowy programów. Podstawowa ednostka pamec est komórka o rozmarze ednego bata. Każda komórka pamec posada swó adres, który est reprezentowany we wspó lczesnych komputerach za pomoca 32- lub 64-btowe lczby ca lkowte. Z punktu wdzena każdego programu można wyróżnć nastepu acy podza l pul adresowe pamec (w tzw. archtekturze von Neumanna): kod programu nformace nterpretowane sa tuta ako nstrukce procesora, stos (ang. stack) gdze przechowywane sa wartośc zmennych lokalnych funkc, sterta (ang. heap) gdze znadua se dane dynamczne przydzelane (alokowane) na prośbe programu (zob. dale), cześć nedostepna zarzadzana przez system operacyny (m.n. dane nnych programów). Zatem każdy program przechowue dane potrzebne do wykonywana swych czynnośc na stose sterce. Stos est cześc a pamec operacyne, na które dane umeszczane kasowane sa w porzadku ostatn na weścu, perwszy na wyścu (LIFO, ang. last-n-frst-out). Umeszczane kasowane danych na stose odbywa se automatyczne. Każda wywo lywana funkca tworzy na stose mesce dla swoch zmennych lokalnych. Gdy funkca kończy dza lane, usuwa z nego te nformace (to dlatego zmenne lokalne przestaa wtedy stneć). Przyrzymy se rozszerzone wers lustrac z poprzednego rozdza lu (rys. 4.1). Po lewe strone wdzmy fragment funkc man(), w które zosta ly zadeklarowane zmenne x, y, z. Umeszczone sa one na dole stosu (ako perwsze w programe). Gdy funkca ta wywo lue f(), na stose tworzone est mesce dla zmennych n, m x. Gdy f() kończy swe dza lane, sa one ze stosu automatyczne usuwane. n,m,x... nt x = 8; nt y = 4; nt z = f(x, y); nt f(nt n, nt m) { nt x = n m; return x; } x,y,z f() Poczatek stosu Rys Zas eg zmennych Wskaźnk Każda zmenna ma przyporzadkowan a komórke (badź komórk) pamec, w które przechowue swoe dane, np. zmenna typu nt zamue nacześce 4 take komórk (4 baty). Fzyczny adres zmenne (czyl numer komórk) można odczytać za pomoca operatora &. Ostatna aktualzaca: 5 grudna 2012 r.

4 4.1. DYNAMICZNA ALOKACJA PAMIECI 2 nt x; cout << " x znadue sę pod adresem " << & x << endl ; // np. 0 x e 3 d 3 0 d b c Przypomnmy, że 0xe3d30dbc oznacza lczbe ca lkowta zapsana w systeme szesnastkowym. W systeme dzesetnym est ona równa Co ważne, przy kolenym uruchomenu programu może to być nna wartość. Nas ednak nteresue tuta fakt, że est to zwyczana lczba. Każda zmenna ma zatem swoe mesce na mape (tzn. w pamec komputera), znaduace se pod pewnym adresem (np. na ul. Koszykowe 75 w Warszawe). Operator & pozwala wec uzyskać nformace o pozyc dane zmenne. Jeszcze nacze: zmenna to budynek magazynu w którym można przechowywać towar określonego rodzau, np. cukerk. Adres zmenne to wspó lrzedne GPS tegoż magazynu. Specalny typ danych do przechowywana nformac o adresach nnych zmennych ( wspó lrz ednych GPS ) określonego typu zwany est typem wskaźnkowym. Oznacza se go przez dodane symbolu * (gwazdka) bezpośredno po nazwe typu. Na przyk lad, zadeklarowane zmenne typu nt oznacza stworzene zmenne przechowuace fzyczny adres w pamec komputera pewne lczby ca lkowte (wspó lrz edne GPS pewnego magazynu do przechowywana cukerków), czyl wskaźnka na zmenna typu nt. Zapam eta Istnee specalne mesce w pamec o adrese 0 (NULL, czarna dzura ), do którego odwo lane se podczas dza lana programu powodue wystapene b l edu. Czesto używa se tego adresu np. do zancowana wskaźnków celem oznaczena, że poczatkowo ne wskazua one na żadne konkretne mesce. Na zmennych wskaźnkowych zosta l określony tzw. operator wy luskana, (ne mylć z gwazdka modyfkuac a znaczene typu!), dzek któremu możemy odczytać, co se znadue pod danym adresem pamec (co znadue se w akmś magazyne, którego znamy tylko wspó lrz edne GPS). Przyrzymy se ponższemu przyk ladow. Tworzone sa dwe zmenne: edna typu ca lkowtego, a druga wskaźnkowa. Ich rozmeszczene w pamec (a dok ladne na stose, sa to bowem zmenne lokalne akeś funkc) przedstawa rys Każda z tych zmennych umeszczona est pod akmś adresem w pamec RAM można go odczytać za pomoca operatora &. 1 nt x = 100; 2 nt wskx = &x; 3 Lstng 4.1. Wy luskane danych spod danego adresu 4 cout << wskx << endl ; // np. 0 x d f cout << wskx << endl ; // cout << x << endl ; // 100 Wypsane wartośc wskaźnka oznacza wypsane adresu, na który wskazue. Wypsane zaś wy luskanego wskaźnka powodue wydrukowane wartośc komórk pamec, na która pokazue wskaźnk. Jako że zmenna typu nt u nas ma rozmar 4 batów, adres nastepne zmenne (wskx) est o 4 ednostk wekszy od adresu x. Ostatna aktualzaca: 5 grudna 2012 r.

5 4.1. DYNAMICZNA ALOKACJA PAMIECI 3 wskx 0xdf x 0xdf (nt*) 0xdf (nt) 100 Rys Zawartość pam ec komputera w programe z lstngu 4.1 Aby eszcze lepe zrozumeć omawane zagadnene, rozważmy fragment kolenego programu. Lstng 4.2. Proste operace z użycem wskaźnków 1 nt x, y; 2 nt w; 3 w = &x; // w = a d r e s x ( n e c h w w s k a z u e na zmenna x ) 4 w = 1; // wstaw 1 tam, g d z e w s k a z u e t e r a z w 5 w = &y; // w = a d r e s y ( n e c h w w s k a z u e na zmenna y ) 6 w = 2; // wstaw 2 tam, g d z e w s k a z u e t e r a z w Zawartość pamec po wykonanu kolenych ln kodu przedstawa rys Tym razem za pomoca operatora wy luskana zapsuemy dane do komórek pamec, na które pokazue wskaźnk w. Zadane Prześledź pokazane rysunk bardzo uważne. Wskaźnk sa nezmerne stotnym elementem ezyka C++. Ostatna aktualzaca: 5 grudna 2012 r.

6 4.1. DYNAMICZNA ALOKACJA PAMIECI 4 1: nt x, y; 2: nt w; w 0xdf y 0xdf x 0xdf (nt*)? (nt)? (nt)? 3: w = &x; w 0xdf y 0xdf x 0xdf (nt*) 0xdf (nt)? (nt)? 4: w = 1; w 0xdf y 0xdf x 0xdf (nt*) 0xdf (nt)? (nt) 1 5: w = &y; w 0xdf y 0xdf x 0xdf (nt*) 0xdf (nt)? (nt) 1 6: w = 2; w 0xdf y 0xdf x 0xdf (nt*) 0xdf (nt) 2 (nt) 1 Rys Zawartość pam ec po wykonanu kolenych nstrukc z lstngu 4.2 Ostatna aktualzaca: 5 grudna 2012 r.

7 4.1. DYNAMICZNA ALOKACJA PAMIECI 5 Przyk lad z rozdz. 3 (cd.). W poprzednm rozdzale rozważalśmy funkce, która s luży la do zamany wartośc dwóch zmennych ca lkowtych. Przypomnmy, że prawd lowe rozwazane tego problemu wymaga lo użyca ne argumentów przekazanych przez wartość, ale przez reference. Równe skutecznym, acz w tym wypadku może neco mne eleganckm, est użyce w tym przypadku wskaźnków. 1 vod zamen ( nt x, nt y) { 2 nt t = x; 3 x = y; 4 y = t; 5 } 6 7 nt man () { 8 nt n = 1, m = 2; 9 zamen (&n, &m); // p r z e k a z a n e argumentów p r z e z w s k a ź n k 10 cout << n << ", " << m << endl ; 11 return 0; 12 } Dzek temu, że przekazalśmy funkc zamen() adresy zmennych zadeklarowanych w funkc man(), możemy ne tylko odczytywać, ale nadpsywać tuta ch wartośc. Omnelśmy tym samym ogranczena przekazywana argumentów przez wartość (kopowane) dostep do orygnalnych zmennych mamy tuta w sposób pośredn, t. za pomoca operatora wy luskana. Cekawostka Pam etamy, że aby dostać s e do konkretnego pola struktury, należy użyć operatora. (kropk). Jeśl mamy dost ep do wskaźnka na struktur e, możemy użyć do tego celu operatora >. struct Punkt { double x; double y; }; //... ( np. man ( ) )... Punkt p; Punkt wp = &p; // w s k a ź n k na p wp >x = 1.0; // t o samo, co ( * wp ). x = 1. 0 d r u g e m n e wygodne wp >y = 2.0; // t o samo, co ( * wp ). y = 2. 0 // Przydza l zwalnane pamec ze sterty Oprócz ścśle określone na etape psana programu lośc danych na stose, można równeż dysponować pamec a na sterce, por. s. 1. Mesce na nasze dane może być przydzelane (alokowane) dynamczne podczas dza lana programu za pomoca operatora new. Po użycu należy e zwolnć za pomoca operatora delete. Ostatna aktualzaca: 5 grudna 2012 r.

8 4.1. DYNAMICZNA ALOKACJA PAMIECI 6 Zapam eta Zaalokowany obekt bedze stna l w pamec nawet po wyścu z funkc, w które go stworzylśmy! Dlatego należy pametać, aby go usunać w pewnym mescu kodu. Oto, w ak sposób możemy dokonać alokac dealokac pam ec dla ednego obektu. typ obekt = new typ ; // a l o k a c a ( new z w r a c a w s k a ź n k na p r z y d z e l o n e m e s c e w p a m e c ) //... delete obekt ; // z w o l n e n e p a m e c Co bardzo ważne, możemy w ten sposób równeż przydzelć pameć na wele obektów nastepu acych koleno po sobe. nt n = 4; typ obekt = new typ [n]; // a l o k a c a ( z w r a c a w s k a ź n k na p e r w s z y z o b e k t ó w ) //... delete [] obekt ; // uwaga na,, [ ] ' ' w e l e o b e k t ó w! Za pomoca powyższego kodu utworzylśmy cag obektów określonego typu, czyl nacze tablce Tablce Do te pory przechowywalśmy dane używaac poedynczych zmennych. By ly to tzw. zmenne skalarne (atomowe). Poedyncza zmenna odpowada la edne ednostce nformac (lczbe, wartośc logczne, z lożone strukturze, wskaźnkow). Czesto ednak w naszych programach bedze zachodzć potrzeba rozważena cagu n zmennych tego samego typu, gdze n nekoneczne mus być znane z góry. Dla przyk ladu, rozważmy fragment programu dokonuacy podsumowana rocznych zarobków pewnego dość obrotnego studenta. 1 double zarobk1, zarobk2, /*... */, zarobk12 ; 2 // d e k l a r a c a 12 z m e n n y c h 3 zarobk1 = ; // s t y c z e ń 4 zarobk2 = ; // l u t y 5 //... 6 zarobk12 = ; // g r u d z e ń 7 8 double suma = 0. 0; 9 suma += zarobk1 ; 10 suma += zarobk2 ; 11 // suma += zarobk12 ; cout << " Zarobłem w 2012 r. " << suma << " zł."; Dochód z każdego mesaca przechowywany est w oddzelne zmenne. Netrudno zauważyć, że operowane na nch ne est zbyt wygodne. Ma lo tego, dość żmudne by loby rozszerzane funkconalnośc takego programu na przypadek obemuacy podsumowane np. zarobków z 2,3,... lat. Ostatna aktualzaca: 5 grudna 2012 r.

9 4.1. DYNAMICZNA ALOKACJA PAMIECI 7 Rozwazane tego problemu może być ednak bardzo czytelne zapsane z użycem dynamczne alokowanych tablc, które sa reprezentaca znanych nam obektów matematycznych: cagów skończonych badź wektorów. Wemy, że za pomoca operatora new możemy przydzelć pameć dla n 1 obektów określonego typu. Operator ten zwraca wskaźnk na perwszy element takego cagu. Pozostae tylko odpowedzeć sobe na pytane, w ak sposób możemy se dostać do kolenych elementów. double zarobk = new double [ 12]; // z a r o b k w s k a z n k na p e r w s z y e l e m e n t c a g u zarobk = ; // wprowadź z a r o b k w p e r w s z y m m e s a c u // co d a l e? delete [] zarobk ; // z w o l n e n e p a m e c Przypomnmy, wskaźnk est po prawdze lczba ca lkowta. Okazue se, że zosta la określona na nm operaca dodawana. I tak zarobk+, gdze est lczba ca lkowta neuemna, oznacza poda adres -tego obektu z cagu. Tym samym zarobk+0 est tym samym, co po prostu zarobk (adresem perwszego elementu), a zarobk+n 1, adresem ostatnego elementu z n-elementowego cagu. Wobec powyższego, fragment perwotne wers programu zwazany z wprowadzenem zarobków możemy zapsać w nastepu acy sposób: double zarobk = new double [ 12]; // z a r o b k w s k a z n k na p e r w s z y e l e m e n t c a g u ( zarobk +0) = ; // wprowadź z a r o b k w p e r w s z y m m e s a c u ( zarobk +1) = ; // wprowadź z a r o b k w drugm m e s a c u //... ( zarobk +11) = ; // wprowadź z a r o b k w o s t a t n m m e s a c u //... delete [] zarobk ; // z w o l n e n e p a m e c Zapam eta Wygodneszy dostep do poszczególnych elementów tablcy możemy uzyskać za pomoca operatora ndeksowana, [ ]. Jeśl t est tablca (a ścśle: wskaźnkem na perwszy element cagu obektów przydzelonych dynamczne), to (t+) możemy zapsać równoważne przez t[]. Elementy tablcy sa numerowane od 0 do n 1, gdze n to rozmar tablcy. Operator ndeksowana przymue za argument dowolna wartość ca lkowta (np. sta l a badź wyrażene arytmetyczne). Każdy element tablcy traktuemy tak, akby by l zwyk l a zmenna taka, z która do te pory melśmy do czynena. Informaca W ezyku C++ ne ma mechanzmów sprawdzana poprawnośc ndeksów! Nastepu- acy kod być może (ne wadomo) ne spowodue b l edu natychmast po uruchomenu. 1 nt t = new nt [5]; 2 t[ 100] = 15123; // : ( 3 t [10000] = 25326; // : ( 4 delete [] t; Ostatna aktualzaca: 5 grudna 2012 r.

10 4.1. DYNAMICZNA ALOKACJA PAMIECI 8 Powyższe nstrukce ednak zmenaa wartośc komórek pamec reprezentuacych dane nnych obektów. Skutk tego dza lana moga se obawć w nnym mescu programu, powoduac neprzewdywalne trudne do wykryca b l edy. Cekawostka Nech t bedze wskaźnkem na pewen typ. Zauważmy, że zaps t+ ne oznacza koneczne, że chodz nam o adres przechowywany w zmenne wskaźnkowe t plus eden bat. Operaca dodawana berze pod uwage typ zmenne wskaźnkowe dokonue przesuneca adresu o welokrotność lczby batów, które zamue w pamec edna zmenna typu typ. Możemy to sprawdzć np. w nastepu acy sposób. 1 nt t = new nt [3]; // u n a s n t t o 4 b a t y 2 cout << t; // np. 0 x 9 b64e300 t o samo, co c o u t << &t [ 0 ] ; 3 cout << t +1; // np. 0 x 9 b64e304 t o samo, co c o u t << &t [ 1 ] ; 4 cout << t +2; // np. 0 x 9 b64e308 t o samo, co c o u t << &t [ 2 ] ; 5 t [0] = 1; 6 t [1] = 2; 7 t [2] = 3; 8 delete [] t; Kolene elementy tablcy w pamec zawsze nastepu a po sobe, co lustrue ponższy rysunek. t t[2] 0x9b64e308 t[1] 0x9b64e304 t[0] 0x9b64e300 (nt) 3 (nt) 2 (nt) 1 Jesteśmy uż gotow, by napsać fragment programu do sumowana zarobków naszego koleg. Tym razem ne bedzemy zak ladać, że lczba mesecy est określona z góry. Tuta bedzemy a wprowadzać z klawatury. 1 nt n; 2 cout << " Ile mesęcy? "; 3 cn >> n; 4 assert (n >0) ; // wymaga <c a s s e r t > 5 6 double zarobk = new double [ n]; 7 8 for ( nt =0; <n; ++) { 9 cout << " Poda zarobk w mesącu nr " << << ": "; 10 cn >> zarobk []; // t o samo, co c n >> * ( z a r o b k + ) ; 11 } // t u t a możemy np. wygenerować l a d n e z e s t a w e n e Ostatna aktualzaca: 5 grudna 2012 r.

11 4.1. DYNAMICZNA ALOKACJA PAMIECI 9 14 // wprowadzonych danych t p. 15 for ( nt =0; <n; ++) 16 cout << << ": " << zarobk [ ] << endl ; // p o l c z m y sum e : 19 double suma = 0. 0; 20 for ( nt =0; <n; ++) 21 suma += zarobk []; cout << " Zarobłem w 2012 r. " << suma << " zł."; delete [] zarobk ; Cekawostka W ezyku C++ można także deklarować tablce o ustalonym z góry, sta lym rozmarze (na stose). Ich zaleta est możlwość ustalena wartośc ch elementów podczas deklarac, co może poprawać czytelność programów demonstruacych mplementace pewnych szczególnych algorytmów. 1 nt t [3] = {1, 2, 3}; // d e k l a r a c a t a b l c y n c o w a n e w a r t o ś c 2 // t w c a ż e s t w s k a ź n k e m na p e r w s z y e l e m e n t : 3 // używamy go tak, a k w p r z y p a d k u t a b l c y d y n a m c z n e a l o k o w a n e 4 //... 5 // n e s t o s u e m y d e l e t e! ( bo n e b y l o new ) Jednak w przypadku duże klasy problemów ch mplementaca z użycem tablc o zadanym rozmarze wydae s e ma lo naturalna s labo skalowalna wzgl edem rozmaru problemu Przekazywane tablc funkcom Podsumumy: tablca to cag obektów tego samego typu po lożonych w pamec koleno, eden po drugm. Dostep do elementów tablcy mamy zapewnony przez wskaźnk na perwszy z tych obektów. Obekty typu wskaźnkowego możemy przekazywać funkcom tak, ak zwyk le zmenne skalarne. Wobec tego, aby można by lo napsać funkce, która w akś sposób przetwarza dane zawarte w tablcy, należy dodatkowo przekazać e nformace o tym, le est elementów w tablcy, czyl e rozmar. Cekawostka W rozdzale 5 poznamy nny sposób nformowana funkc, gdze znadue se ostatn element tablcy. Za lożymy wtedy, że ostatnm elementem cagu est pewna specalna wyróżnona wartość, (tzw. wartownk) która ne poawa se ako zwyk ly element gdze ndze. Wówczas wystarczy nam tylko nformaca na temat po lożena perwszego elementu tablcy. Je konec bowem bedzemy mogl sam sobe znaleźć. Ostatna aktualzaca: 5 grudna 2012 r.

12 4.2. PROSTE ALGORYTMY SORTOWANIA TABLIC 10 Przyk lad. Funkca wyznaczaaca sume wartośc elementów z podane tablcy. 1 double suma ( double const t, nt n) 2 { // d o s t e p do elementów t t y l k o do o d c z y t u 3 assert (n > 0); 4 double s = 0. 0; 5 for ( nt =0; <n; ++) 6 s += t[]; 7 return s; 8 } 9 10 nt man ( vod ) 11 { 12 nt le = 10; 13 double punkty = new double [ le ]; 14 for ( nt =0; <le ; ++) 15 cn >> punkty []; 16 cout << suma ( punkty, le ); // p r z e k a z a n e t a b l c y do f u n k c 17 delete [] punkty ; 18 return 0; 19 } Na margnese, zauważmy, że funkca suma() ne ma żadnych efektów ubocznych. Ne wypsue nc na ekran an o nc ne pyta se użytkownka. Wyznacza tylko wartość sumy elementów zawartych w tablcy czyl tylko to, czego użytkownk (funkca man()) może se po ne spodzewać. Ponadto zaps double const zapewna, że elementów dane tablcy ne można zmenać. Jest to tzw. wskaźnk na wartośc sta le Proste algorytmy sortowana tablc Zadane Wyobraź sobe, le czasu zae loby C znalezene has la w s lownku (chodz oczywśce o s lownk ksażkowy), gdyby redaktorzy przyelby losowa koleność wyrazów. Przeanalzu z akego algorytmu korzystasz wyszuku ac to, co Ce nteresue. Rozważymy teraz problem sortowana tablc ednowymarowych, który est stotny w welu zastosowanach, zarówno teoretycznych ak praktycznych. Dzek odpowednemu uporzadkowanu elementów nektóre algorytmy (np. wyszukwana) moga dza lać szybce, moga być prostsze w napsanu czy też można latwe formalne udowodnć ch poprawność. Co wece, stnee wcale nema lo zagadneń, które wprost wymagaa pewnego uporzad- kowana danych które bez take operac wcale ne maa sensu. Zadane Przyk ladowo, rozważmy w ak sposób wyszukuemy nteresuace nas strony nternetowe. Wekszość wyszukwarek dza la w nastepu acy sposób. Ostatna aktualzaca: 5 grudna 2012 r.

13 4.2. PROSTE ALGORYTMY SORTOWANIA TABLIC Znadź wszystke strony w baze danych, które zaweraa podane przez użytkownka s lowa kluczowe (np. kaszel, goraczka obawy ). 2. Oceń każda znalezona strone pod wzgledem pewne mary adekwatnośc/popularnośc- /akośc. 3. Posortu wynk zgodne z ocenam (od nalepsze do nagorsze ) pokaż ch lste użytkownkow. Warto przypomneć, że o rynkowym sukcese wyszukwark Google zadecydowa lo to, że w przecweństwe do ówczesnych konkurencynych serwsów zwraca la ona wynk w dość pożyteczne dla w ekszośc osób kolenośc. Problem sortowana, w swe naprostsze postac, można sformalzować w nastepu acy sposób. Dana est tablca t rozmaru n zaweraaca elementy, które można porównywać za pomoca operatora relacynego <=. Należy zmenć koleność (t. dokonać permutac, uporzadkowana) elementów t tak, by zachodz ly warunk: t[0] <= t[1], t[1] <= t[2],..., t[n 2] <= t[n 1]. Cekawostka Zauważmy, że rozwazane takego problemu wcale ne mus być ednoznaczne. Dla tablc zaweraacych elementy t[] t[] take, że dla zachodz t[] <= t[] oraz t[] <= t[], t. t[] == t[], może stnee wece nż edna permutaca spe lnaaca powyższe warunk. Algorytm sortowana nazwemy stablnym, eśl wzgledna koleność elementów o te same wartośc zostae zachowana po posortowanu. W lasność ta est przydatna w przypadku sortowana obektów z lożonych za pomoca wece nż ednego kryterum na raz. W nneszym paragrafe omówmy trzy algorytmy sortowana: 1. sortowane przez wybór, 2. sortowane przez wstawane, 3. sortowane babelkowe. Algorytmy te cechua se tym, że w pesymstycznym ( nagorszym ) przypadku lczba operac porównań elementów tablcy est proporconalna do n 2 (zob. dale, podrozdz ). Bardze wydane, co za tym dze, bardze z lożone algorytmy sortowana bed a omówone w semestrze III (np. sortowane szybke, przez l aczene, przez kopcowane). Nektóre z nch wymagaa co nawyże kn log n porównań dla pewnego k. Dzek temu dla tablc o dużym rozmarze dza la a naprawde szybko. Ostatna aktualzaca: 5 grudna 2012 r.

14 4.2. PROSTE ALGORYTMY SORTOWANIA TABLIC Sortowane przez wybór W algorytme sortowana przez wybór (ang. selecton sort) dokonuemy za każdym razem wyboru elementu namneszego spośród do te pory neposortowanych, pók ca la tablca ne zostane uporzadkowana. Idee te przedstawa nastepu acy pseudokod: dla =0,1,...,n 2 { // t [ 0 ],..., t [ 1] s a u ż u p o r za d k o w a n e wzgledem r e l a c <= // ( nadto, s a u ż na s w o c h o s t a t e c z n y c h m e s c a c h ) = ndeks namneszego elementu spośród t[],..., t[n 1]; zameń elementy t[] t[]; } Jako przyk lad rozważmy, krok po kroku, przebeg sortowana cagu lczb naturalnych (4,1,3,5,2). Kolene terace dza lana tego algorytmu lustrua rys W kroku I (rys. 4.4) mamy ==0. Dokonuac wyboru elementu namneszego spośród t[0],..., t[4] otrzymuemy ==1. Zamenamy wec elementy t[0] t[1] mescam. 2. W kroku II (rys. 4.5) mamy ==1. Wybór namneszego elementu wśród t[1],..., t[4] dae ==4 Zamenamy mescam zatem t[1] t[4]. 3. Dale (rys. 4.6), ==2. Elementem namneszym spośród t[2],..., t[4] est t[] dla ==2 Zamenamy mescam zatem nezbyt sensowne t[2] t[2]. Komputer, na szcześce, zrob to bez grymasu. 4. W ostatnm kroku (rys. 4.7) ==3 ==4, dzek czemu możemy uzyskać ostateczne rozwazane (rys. 4.8). Ostatna aktualzaca: 5 grudna 2012 r.

15 Ostatna aktualzaca: 5 grudna 2012 r Rys Sortowane przez wybór przyk lad teraca I Rys Sortowane przez wybór przyk lad teraca II Rys Sortowane przez wybór przyk lad teraca III 4.2. PROSTE ALGORYTMY SORTOWANIA TABLIC 13

16 Ostatna aktualzaca: 5 grudna 2012 r Rys Sortowane przez wybór przyk lad teraca IV Rys Sortowane przez wybór przyk lad rozwazane PROSTE ALGORYTMY SORTOWANIA TABLIC 14

17 4.2. PROSTE ALGORYTMY SORTOWANIA TABLIC Sortowane przez wstawane Algorytm sortowana przez wstawane (ang. nserton sort) est metoda czesto stosowana w praktyce do porzadkowana ma le lczby elementów (do ok ) ze wzgledu na swa prostote szybkość dza lana. W nnesze metodze w -tym kroku elementy t[0],..., t[ 1] sa uż wstepne uporzadkowane wzgledem relac <=. Pomedzy ne wstawamy t[] tak, by ne zaburzyć porzadku. Formalne rzecz umuac, dea ta może być wyrażona za pomoca pseudokodu: dla =1,2,...,n 1 { // t [ 0 ],..., t [ 1] s a w s t e p n e u p o r za d k o w a n e wzgledem <= // ( a l e n e k o n e c z n e e s t t o c h o s t a t e c z n e m e s c e ) = ndeks takego elementu spośród t [0],..., t[], że t[u] <= t[] dla każdego u < oraz t[] < t[v] dla każdego v ; eśl ( < ) wstaw t[] przed t[]; } gdze przez operace wstaw t[] przed t[], dla 0 < rozumemy cag dza lań, maacy na celu przestawene kolenośc elementów tablcy: t[0]... t[ 1] t[]... t[ 1] t[] t[+1]... t[n 1] tak, by uzyskać: t[0]... t[ 1] t[] t[]... t[ 1] t[+1]... t[n 1] Powyższy pseudokod może być wyrażony w nastepu ace równoważne forme: dla =1,2,...,n 1 { // t [ 0 ],..., t [ 1] s a u p o r za d k o w a n e wzgledem <= // ( a l e n e k o n e c z n e e s t t o c h o s t a t e c z n e m e s c e ) znadź nawększe ze zboru {0,..., } take, że == 0 lub t[ 1] <= t[]; eśl ( < ) wstaw t[] przed t[]; } Jako przyk lad rozpatrzmy znów cag lczb naturalnych (4,1,3,5,2). Przebeg kolenych wykonywanych kroków przedstawaa rys Cekawostka Można pokazać, że tak sformu lowany algorytm est stablny. Prześledź ego dza lane np. dla cagu (2, 4, 2, 5, 1, 3) (dla czytelnośc te same elementy wyróżnlśmy, by wskazać ch perwotny porzadek). Porówna uzyskany wynk z tym, który można uzyskać za pomoca algorytmu sortowana przez wybór. Ostatna aktualzaca: 5 grudna 2012 r.

18 Ostatna aktualzaca: 5 grudna 2012 r Rys Sortowane przez wstawane przyk lad teraca I Rys Sortowane przez wstawane przyk lad teraca II Rys Sortowane przez wstawane przyk lad teraca III 4.2. PROSTE ALGORYTMY SORTOWANIA TABLIC 16

19 4.2. PROSTE ALGORYTMY SORTOWANIA TABLIC Rys Sortowane przez wstawane przyk lad teraca IV Ostatna aktualzaca: 5 grudna 2012 r.

20 4.2. PROSTE ALGORYTMY SORTOWANIA TABLIC Sortowane babelkowe Sortowane babelkowe (ang. bubble sort) est nteresuacym przyk ladem algorytmu poawaacego se w wekszośc podrecznków akademckch dotyczacych podstawowych sposobów sortowana tablc, którego prawe wcale ne stosue se go w praktyce. Jego wydaność est bowem bardzo s laba w porównanu do dwóch metod opsanych powyże. Z druge strony, posada on sympatyczna hydrologczna (nautyczna?) nterpretace, która urzeka welu wyk ladowców, w tym skromnego autora nnesze ksażeczk. Tak umotywowan, przystapmy wec do zapoznana se z nm. W tym algorytme porównywane sa tylko elementy ze soba bezpośredno sasadu ace. Jeśl okaże se, że ne zachowua one odpowedne kolenośc wzgledem relac <=, element ceższy wypychany est w góre, nczym pecherzyk powetrza (tytu lowy b abelek) pod powerzchna wody. A oto pseudokod: dla =n 1,...,1 { dla =0,..., 1 { } // p o r ó w n u e l e m e n t y p a r a m eśl (t[] > t[ +1]) zameń t[] t[ +1]; // t z n. w y p c h n c e ż s z e g o b a b e l k a w g ó r e } // t u t a e l e m e n t y t [ ],..., t [ n 1] s a u ż na s w o c h m e s c a c h Dla przyk ladu rozpatrzmy ponowne tablce (4,1,3,5,2). Przebeg kolenych wykonywanych kroków przedstawaa rys Cekawostka Ten algorytm równeż est stablny. Ostatna aktualzaca: 5 grudna 2012 r.

21 4.2. PROSTE ALGORYTMY SORTOWANIA TABLIC ? ? ? ? Rys Sortowane babelkowe przyk lad krok I Ostatna aktualzaca: 5 grudna 2012 r.

22 4.2. PROSTE ALGORYTMY SORTOWANIA TABLIC ? ? ? Rys Sortowane babelkowe przyk lad krok II Ostatna aktualzaca: 5 grudna 2012 r.

23 4.2. PROSTE ALGORYTMY SORTOWANIA TABLIC ? ? Rys Sortowane babelkowe przyk lad krok III Ostatna aktualzaca: 5 grudna 2012 r.

24 4.2. PROSTE ALGORYTMY SORTOWANIA TABLIC ? Rys Sortowane babelkowe przyk lad krok IV Rys Sortowane babelkowe przyk lad rozwazane Ostatna aktualzaca: 5 grudna 2012 r.

25 4.2. PROSTE ALGORYTMY SORTOWANIA TABLIC Efektywność oblczenowa Rozważaac algorytmy sortowana w sposób oczywsty obserwuemy wspomnane w perwszym rozdzale zawsko eden problem wele algorytmów. Rzecz asna, trzy podane wyże algorytmy (co zreszta zosta lo zapowedzane) ne wyczerpua wszystkch możlwośc rozwazana zagadnena sortowana tablc ednowymarowych. Nasuwa se wec pytane: skoro każda z metod znadue rozwazane danego problemu w poprawny sposób, ake przes lank pownny nam kerować przy wyborze algorytmu w zastosowanach praktycznych? Lenuszk z pewnośc a wybra lyby algorytm naprostszy w mplementac. Domyślamy se ednak, że ne est to zbyt roztropne kryterum. W tzw. analze algorytmów wyróżna s e dwe naważnesze mary efektywnośc oblczenowe: 1. z lożoność czasowa czyl lczbe tzw. operac znaczacych (zależna od danego problemu; moga to być przestawena, porównana, operace arytmetyczne tp.) potrzebnych do rozwazana danego zagadnena, 2. z lożoność pamecowa czyl lość dodatkowe pamec potrzebne do rozwazana problemu. Zauważmy, że w przypadku przedstawonych wyże algorytmów, oprócz dane tablcy która należy posortować klku zmennych pomocnczych ne est potrzebna żadna dodatkowa lczba komórek pamec komputera (w przypadku bardze z lożonych metod omawanych w sem. III bedze ednak nacze, np. koneczne bedze użyce eszcze edne tablcy). Skupmy se wec teraz tylko na omówenu z lożonośc czasowe. Przyrzymy se zatem przyk ladowym mplementacom dwóch algorytmów dla dane tablcy t rozmaru n. Oto kod stosuacy sortowane przez wybór: 1 // S o r t o w a n e p r z e z wybór : 2 for ( nt =0; <n 1; ++) 3 { 4 // z n a d ź n d e k s namn. e l. s p o ś r ó d t [ ],..., t [ n 1 ] ; 5 nt = ; 6 for ( nt k= +1; k<n; ++k) 7 f (t[k] < t[]) // p o r ó w n a n e elementów 8 = k; 9 10 // zamana 11 nt p = t[]; 12 t[] = t[]; 13 t[] = p; 14 } A oto kod sortuacy tablce babelkowo : 1 // S o r t o w a n e b a b e l k o w e : 2 for ( nt =n 1; >0; ) 3 { 4 for ( nt =0; <; ++) 5 { 6 f (t[] > t[ +1]) // p o r o w n a n e p a r a m 7 { 8 nt p = t[]; // zamana 9 t[] = t[ +1]; Ostatna aktualzaca: 5 grudna 2012 r.

26 4.2. PROSTE ALGORYTMY SORTOWANIA TABLIC t[ +1] = p; 11 } 12 } 13 } Po perwsze, musmy podkreślć, ż formalne rzecz borac z lożoność czasowa wyznacza se ne dla abstrakcynego algorytmu, tylko dla ego konkretne mplementac. Implementaca zależna est, rzecz asna, od stosowanego ezyka programowana zdolnośc programsty. Ne pownno to nas dzwć, poneważ np. za wysokm pozom abstrakc stosowanym czesto w pseudokodach może kryć se naprawde wele skomplkowanych nstrukc ezyka programowana. Po druge, zauważmy, że z lożoność est nacześce zależna od danych weścowych. W naszym przypadku est to ne tylko rozmar tablcy, n, ale także e wstepne uporzad- kowane. Z tego też powodu lczbe operac znaczacych pownno podawać se w postac funkc rozmaru zboru danych weścowych (u nas est to po prostu n) w różnych sytuacach, nacześce co namne: 1. w przypadku pesymstycznym, czyl dla danych, dla których mplementaca algorytmu mus wykonać nawece operac znaczacych, 2. w przypadku optymstycznym, czyl gdy dane weścowe mnmalzua lczbe potrzebnych operac znaczacych. Cekawostka Celowość przeprowadzena badana przypadków pesymstycznych optymstycznych pozostae przeważne poza dyskusa. Czasem także bada se tzw. z lożoność czasowa oczekwana (średna), zak ladaac, że dane maa np. tzw. rozk lad ednostany (w naszym przypadku znaczy loby to, że prawdopodobeństwo poawena se każde możlwe permutac cagu weścowego est take samo). Oczywśce watplwośc może tuta budzć, czy tak dobór rozk ladu est adekwatny, s lowem czy rzeczywśce modelue to, co zdarza se w praktyce. Ne zmena to ednak faktu, że est to zagadnene bardzo cekawe warte rozważana. Wymaga ono ednak dość rozbudowanego aparatu matematycznego, którym nestety eszcze ne dysponuemy. Netrudno zauważyć, że w przypadku przedstawonych wyże mplementac algorytmów przypadkem optymstycznym est tablca uż posortowana (np. (1, 2, 3, 4, 5)), a przypadkem pesymstycznym tablca posortowana odwrotne (np. (5, 4, 3, 2, 1)). Pozostae nam uż tylko wyróżnć, co możemy rozumeć w danych przyk ladach za operace znaczace oraz dokonać stosowne oblczena. Wydae se, że narozsadne bedze rozważyć lczbe potrzebnych przestaweń elementów oraz lczbe ch porównań rzecz asna, w zależnośc od n. 1. Analza lczby porównań elementów. 1. Sortowane przez wybór. Zauważamy, że lczba porównań ne est zależna od wstepnego uporzadkowana elementów tablcy. Jest ona zawsze równa (n 1) + (n 2) = n(n 1)/2 = n 2 /2 n/2. Ostatna aktualzaca: 5 grudna 2012 r.

27 4.2. PROSTE ALGORYTMY SORTOWANIA TABLIC Sortowane babelkowe. Jak wyże, lczba porównań ne est zależna od wstepnego uporzadkowana elementów tablcy. Uzyskuemy wartość (n 1) + (n 2) = n 2 /2 n/2. Obydwe mplementace algorytmów ne różna se lczba potrzebnych porównań. Sa zatem tak samo dobre (badź tak samo z le) pod wzgledem tego kryterum. Zauważmy, że lczba ta est proporconalna do n 2 (nacze est rzedu n 2 ). 2. Analza lczby przestaweń elementów. 1. Sortowane przez wybór. (a) Przypadek pesymstyczny. Lczba potrzebnych przestaweń wynos n 1. (b) Przypadek optymstyczny. Lczba potrzebnych przestaweń wynos Sortowane babelkowe. (a) Przypadek pesymstyczny. Lczba potrzebnych przestaweń wynos n(n 1)/2. (b) Przypadek optymstyczny. Lczba potrzebnych przestaweń wynos 0. Okazue se, że w nagorszym przypadku lczba potrzebnych przestaweń elementów dla nasze mplementac algorytmu sortowana przez wybór est proporconalna do n, a dla sortowana babelkowego est aż rzedu n 2! Tablca 4.1 zestawa lczbe potrzebnych przestaweń elementów powyższych algorytmów uzyskane na komputerze autora nneszego opracowana czasy dza lana (w sekundach, tablce o elementach typu nt). Zauważamy, że użyce powyższych algorytmów uż dla n > ne est dobrym pomys lem (na szcześce, stnea lepsze, naprawde szybke sposoby rozwazana problemu sortowana). Ponadto, sama lczba przestaweń ne t lumaczy czasu wykonana oblczeń (dlatego koneczne by lo także zbadane lczby potrzebnych porównań). Tab Porównane lczby potrzebnych przestaweń elementów czasów dza lana dwóch algorytmów sortowana w przypadku pesymstycznym Lczba przestaweń Czas [s] n Selecton Bubble Selecton Bubble Ostatna aktualzaca: 5 grudna 2012 r.

Problem plecakowy (KNAPSACK PROBLEM).

Problem plecakowy (KNAPSACK PROBLEM). Problem plecakowy (KNAPSACK PROBLEM). Zagadnene optymalzac zwane problemem plecakowym swą nazwę wzęło z analog do sytuac praktyczne podobne do problemu pakowana plecaka. Chodz o to, by zapakować maksymalne

Bardziej szczegółowo

INSTYTUT BADAŃ SYSTEMOWYCH PAN WYDZIA L MATEMATYKI I NAUK INFORMACYJNYCH POLITECHNIKI WARSZAWSKIEJ. Algorytmy. i podstawy programowania

INSTYTUT BADAŃ SYSTEMOWYCH PAN WYDZIA L MATEMATYKI I NAUK INFORMACYJNYCH POLITECHNIKI WARSZAWSKIEJ. Algorytmy. i podstawy programowania MAREK GAGOLEWSKI INSTYTUT BADAŃ SYSTEMOWYCH PAN WYDZIA L MATEMATYKI I NAUK INFORMACYJNYCH POLITECHNIKI WARSZAWSKIEJ Algorytmy podstawy programowana 4. Wskaźnk dynamczna alokacja pam ec. Proste algorytmy

Bardziej szczegółowo

Zapis informacji, systemy pozycyjne 1. Literatura Jerzy Grębosz, Symfonia C++ standard. Harvey M. Deitl, Paul J. Deitl, Arkana C++. Programowanie.

Zapis informacji, systemy pozycyjne 1. Literatura Jerzy Grębosz, Symfonia C++ standard. Harvey M. Deitl, Paul J. Deitl, Arkana C++. Programowanie. Zaps nformacj, systemy pozycyjne 1 Lteratura Jerzy Grębosz, Symfona C++ standard. Harvey M. Detl, Paul J. Detl, Arkana C++. Programowane. Zaps nformacj w komputerach Wszystke elementy danych przetwarzane

Bardziej szczegółowo

Twierdzenie Bezouta i liczby zespolone Javier de Lucas. Rozwi azanie 2. Z twierdzenia dzielenia wielomianów, mamy, że

Twierdzenie Bezouta i liczby zespolone Javier de Lucas. Rozwi azanie 2. Z twierdzenia dzielenia wielomianów, mamy, że Twerdzene Bezouta lczby zespolone Javer de Lucas Ćwczene 1 Ustal dla których a, b R można podzelć f 1 X) = X 4 3X 2 + ax b przez f 2 X) = X 2 3X+2 Oblcz a b Z 5 jeżel zak ladamy, że f 1 f 2 s a welomanam

Bardziej szczegółowo

STATYSTYKA MATEMATYCZNA WYKŁAD 5 WERYFIKACJA HIPOTEZ NIEPARAMETRYCZNYCH

STATYSTYKA MATEMATYCZNA WYKŁAD 5 WERYFIKACJA HIPOTEZ NIEPARAMETRYCZNYCH STATYSTYKA MATEMATYCZNA WYKŁAD 5 WERYFIKACJA HIPOTEZ NIEPARAMETRYCZNYCH 1 Test zgodnośc χ 2 Hpoteza zerowa H 0 ( Cecha X populacj ma rozkład o dystrybuance F). Hpoteza alternatywna H1( Cecha X populacj

Bardziej szczegółowo

Sortowanie szybkie Quick Sort

Sortowanie szybkie Quick Sort Sortowane szybke Quck Sort Algorytm sortowana szybkego opera sę na strateg "dzel zwycęża" (ang. dvde and conquer), którą możemy krótko scharakteryzować w trzech punktach: 1. DZIEL - problem główny zostae

Bardziej szczegółowo

Badania operacyjne w logistyce i zarządzaniu produkcją

Badania operacyjne w logistyce i zarządzaniu produkcją Państwowa Wyższa Szkoła Zawodowa w Nowym Sączu Badana operacyne w logstyce zarządzanu produkcą cz. I Andrze Woźnak Nowy Sącz Komtet Redakcyny doc. dr Zdzsława Zacłona przewodncząca, prof. dr hab. nż. Jarosław

Bardziej szczegółowo

ZESTAW ZADAŃ Z INFORMATYKI

ZESTAW ZADAŃ Z INFORMATYKI (Wpsue zdaąc przed rozpoczęcem prac) KOD ZDAJĄCEGO ZESTAW ZADAŃ Z INFORMATYKI CZĘŚĆ II (dla pozomu rozszerzonego) GRUDZIEŃ ROK 004 Czas prac 50 mnut Instrukca dla zdaącego. Proszę sprawdzć, cz zestaw zadań

Bardziej szczegółowo

Zaawansowane metody numeryczne Komputerowa analiza zagadnień różniczkowych 1. Układy równań liniowych

Zaawansowane metody numeryczne Komputerowa analiza zagadnień różniczkowych 1. Układy równań liniowych Zaawansowane metody numeryczne Komputerowa analza zagadneń różnczkowych 1. Układy równań lnowych P. F. Góra http://th-www.f.uj.edu.pl/zfs/gora/ semestr letn 2006/07 Podstawowe fakty Równane Ax = b, x,

Bardziej szczegółowo

Analiza danych OGÓLNY SCHEMAT. http://zajecia.jakubw.pl/ Dane treningowe (znana decyzja) Klasyfikator. Dane testowe (znana decyzja)

Analiza danych OGÓLNY SCHEMAT. http://zajecia.jakubw.pl/ Dane treningowe (znana decyzja) Klasyfikator. Dane testowe (znana decyzja) Analza danych Dane trenngowe testowe. Algorytm k najblższych sąsadów. Jakub Wróblewsk jakubw@pjwstk.edu.pl http://zajeca.jakubw.pl/ OGÓLNY SCHEMAT Mamy dany zbór danych podzelony na klasy decyzyjne, oraz

Bardziej szczegółowo

Urządzenia wejścia-wyjścia

Urządzenia wejścia-wyjścia Urządzena wejśca-wyjśca Klasyfkacja urządzeń wejśca-wyjśca. Struktura mechanzmu wejśca-wyjśca (sprzętu oprogramowana). Interakcja jednostk centralnej z urządzenam wejśca-wyjśca: odpytywane, sterowane przerwanam,

Bardziej szczegółowo

I. Elementy analizy matematycznej

I. Elementy analizy matematycznej WSTAWKA MATEMATYCZNA I. Elementy analzy matematycznej Pochodna funkcj f(x) Pochodna funkcj podaje nam prędkość zman funkcj: df f (x + x) f (x) f '(x) = = lm x 0 (1) dx x Pochodna funkcj podaje nam zarazem

Bardziej szczegółowo

Laboratorium ochrony danych

Laboratorium ochrony danych Laboratorum ochrony danych Ćwczene nr Temat ćwczena: Cała skończone rozszerzone Cel dydaktyczny: Opanowane programowej metody konstruowana cał skończonych rozszerzonych GF(pm), poznane ch własnośc oraz

Bardziej szczegółowo

Zestaw zadań 4: Przestrzenie wektorowe i podprzestrzenie. Liniowa niezależność. Sumy i sumy proste podprzestrzeni.

Zestaw zadań 4: Przestrzenie wektorowe i podprzestrzenie. Liniowa niezależność. Sumy i sumy proste podprzestrzeni. Zestaw zadań : Przestrzene wektorowe podprzestrzene. Lnowa nezależność. Sumy sumy proste podprzestrzen. () Wykazać, że V = C ze zwykłym dodawanem jako dodawanem wektorów operacją mnożena przez skalar :

Bardziej szczegółowo

Problemy jednoczesnego testowania wielu hipotez statystycznych i ich zastosowania w analizie mikromacierzy DNA

Problemy jednoczesnego testowania wielu hipotez statystycznych i ich zastosowania w analizie mikromacierzy DNA Problemy jednoczesnego testowana welu hpotez statystycznych ch zastosowana w analze mkromacerzy DNA Konrad Furmańczyk Katedra Zastosowań Matematyk SGGW Plan referatu Testowane w analze mkromacerzy DNA

Bardziej szczegółowo

Paradygmaty programowania. Paradygmaty programowania

Paradygmaty programowania. Paradygmaty programowania Paradygmaty programowania Paradygmaty programowania Dr inż. Andrzej Grosser Cz estochowa, 2013 2 Spis treści 1. Zadanie 2 5 1.1. Wprowadzenie.................................. 5 1.2. Wskazówki do zadania..............................

Bardziej szczegółowo

BADANIA OPERACYJNE. Podejmowanie decyzji w warunkach niepewności. dr Adam Sojda

BADANIA OPERACYJNE. Podejmowanie decyzji w warunkach niepewności. dr Adam Sojda BADANIA OPERACYJNE Podejmowane decyzj w warunkach nepewnośc dr Adam Sojda Teora podejmowana decyzj gry z naturą Wynk dzałana zależy ne tylko od tego, jaką podejmujemy decyzję, ale równeż od tego, jak wystąp

Bardziej szczegółowo

Sztuczne sieci neuronowe

Sztuczne sieci neuronowe Sztuczne sec neuronowe Jerzy Stefanowsk Plan wykładu 1. Wprowadzene 2. Model sztucznego neuronu. 3. Topologe sec neuronowych 4. Reguły uczena sec neuronowych. 5. Klasyfkaca sec neuronowych. 6. Sec warstwowe

Bardziej szczegółowo

Plan wykładu: Typowe dane. Jednoczynnikowa Analiza wariancji. Zasada: porównać zmienność pomiędzy i wewnątrz grup

Plan wykładu: Typowe dane. Jednoczynnikowa Analiza wariancji. Zasada: porównać zmienność pomiędzy i wewnątrz grup Jednoczynnkowa Analza Waranc (ANOVA) Wykład 11 Przypomnene: wykłady zadana kursu były zaczerpnęte z podręcznków: Statystyka dla studentów kerunków techncznych przyrodnczych, J. Koronack, J. Melnczuk, WNT

Bardziej szczegółowo

SYSTEM ZALICZEŃ ĆWICZEŃ

SYSTEM ZALICZEŃ ĆWICZEŃ AMI, zma 010/011 mgr Krzysztof Rykaczewsk System zalczeń Wydzał Matematyk Informatyk UMK SYSTEM ZALICZEŃ ĆWICZEŃ z Analzy Matematycznej I, 010/011 (na podst. L.G., K.L., J.M., K.R.) Nnejszy dokument dotyczy

Bardziej szczegółowo

D Archiwum Prac Dyplomowych - Instrukcja dla studentów

D Archiwum Prac Dyplomowych - Instrukcja dla studentów Kraków 01.10.2015 D Archwum Prac Dyplomowych - Instrukcja dla studentów Procedura Archwzacj Prac Dyplomowych jest realzowana zgodne z zarządzenem nr 71/2015 Rektora Unwersytetu Rolnczego m. H. Kołłątaja

Bardziej szczegółowo

ZASADY PROGRAMOWANIA KOMPUTERÓW

ZASADY PROGRAMOWANIA KOMPUTERÓW POLITECHNIKA WARSZAWSKA Instytut Automatyki i i Robotyki ZASADY PROGRAMOWANIA KOMPUTERÓW Język Język programowania: C/C++ Środowisko programistyczne: C++Builder 6 Wykład 9.. Wskaźniki i i zmienne dynamiczne.

Bardziej szczegółowo

Weryfikacja hipotez dla wielu populacji

Weryfikacja hipotez dla wielu populacji Weryfkacja hpotez dla welu populacj Dr Joanna Banaś Zakład Badań Systemowych Instytut Sztucznej Intelgencj Metod Matematycznych Wydzał Informatyk Poltechnk Szczecńskej 5. Parametryczne testy stotnośc w

Bardziej szczegółowo

Zaawansowane metody numeryczne

Zaawansowane metody numeryczne Wykład 9. jej modyfkacje. Oznaczena Będzemy rozpatrywać zagadnene rozwązana następującego układu n równań lnowych z n newadomym x 1... x n : a 11 x 1 + a 12 x 2 +... + a 1n x n = b 1 a 21 x 1 + a 22 x

Bardziej szczegółowo

Programowanie Równoległe i Rozproszone

Programowanie Równoległe i Rozproszone Programowane Równoległe Rozproszone Wykład Programowane Równoległe Rozproszone Lucjan Stapp Wydzał Matematyk Nauk Informacyjnych Poltechnka Warszawska (l.stapp@mn.pw.edu.pl) /38 PRR Wykład Chcemy rozwązać

Bardziej szczegółowo

Krzysztof Borowski Zastosowanie metody wideł cenowych w analizie technicznej

Krzysztof Borowski Zastosowanie metody wideł cenowych w analizie technicznej Krzysztof Borowsk Zastosowane metody wdeł cenowych w analze technczne Wprowadzene Metoda wdeł cenowych została perwszy raz ogłoszona przez Alana Andrewsa 1 w roku 1960. Trzy lne wchodzące w skład metody

Bardziej szczegółowo

Przykład 5.1. Kratownica dwukrotnie statycznie niewyznaczalna

Przykład 5.1. Kratownica dwukrotnie statycznie niewyznaczalna rzykład.. Kratownca dwukrotne statyczne newyznaczana oecene: korzystaąc z metody sł wyznaczyć sły w prętach ponższe kratowncy. const Rozwązane zadana rozpoczynamy od obczena stopna statyczne newyznaczanośc

Bardziej szczegółowo

STARE A NOWE KRAJE UE KONKURENCYJNOŚĆ POLSKIEGO EKSPORTU

STARE A NOWE KRAJE UE KONKURENCYJNOŚĆ POLSKIEGO EKSPORTU Ewa Szymank Katedra Teor Ekonom Akadema Ekonomczna w Krakowe ul. Rakowcka 27, 31-510 Kraków STARE A NOWE KRAJE UE KONKURENCYJNOŚĆ POLSKIEGO EKSPORTU Abstrakt Artykuł przedstawa wynk badań konkurencyjnośc

Bardziej szczegółowo

Wykład 2: Uczenie nadzorowane sieci neuronowych - I

Wykład 2: Uczenie nadzorowane sieci neuronowych - I Wykład 2: Uczene nadzorowane sec neuronowych - I Algorytmy uczena sec neuronowych Na sposób dzałana sec ma wpływ e topologa oraz funkconowane poszczególnych neuronów. Z reguły topologę sec uznae sę za

Bardziej szczegółowo

Ćwiczenie 10. Metody eksploracji danych

Ćwiczenie 10. Metody eksploracji danych Ćwczene 10. Metody eksploracj danych Grupowane (Clusterng) 1. Zadane grupowana Grupowane (ang. clusterng) oznacza grupowane rekordów, obserwacj lub przypadków w klasy podobnych obektów. Grupa (ang. cluster)

Bardziej szczegółowo

Projekt 6 6. ROZWIĄZYWANIE RÓWNAŃ NIELINIOWYCH CAŁKOWANIE NUMERYCZNE

Projekt 6 6. ROZWIĄZYWANIE RÓWNAŃ NIELINIOWYCH CAŁKOWANIE NUMERYCZNE Inormatyka Podstawy Programowana 06/07 Projekt 6 6. ROZWIĄZYWANIE RÓWNAŃ NIELINIOWYCH CAŁKOWANIE NUMERYCZNE 6. Równana algebraczne. Poszukujemy rozwązana, czyl chcemy określć perwastk rzeczywste równana:

Bardziej szczegółowo

Zmodyfikowana technika programowania dynamicznego

Zmodyfikowana technika programowania dynamicznego Zmodyfkowana technka programowana dynamcznego Lech Madeysk 1, Zygmunt Mazur 2 Poltechnka Wrocławska, Wydzał Informatyk Zarządzana, Wydzałowy Zakład Informatyk Wybrzeże Wyspańskego 27, 50-370 Wrocław Streszczene.

Bardziej szczegółowo

5. OPTYMALIZACJA GRAFOWO-SIECIOWA

5. OPTYMALIZACJA GRAFOWO-SIECIOWA . OPTYMALIZACJA GRAFOWO-SIECIOWA Defncja grafu Pod pojęcem grafu G rozumemy następującą dwójkę uporządkowaną (defncja grafu Berge a): (.) G W,U gdze: W zbór werzchołków grafu, U zbór łuków grafu, U W W,

Bardziej szczegółowo

Podstawy teorii falek (Wavelets)

Podstawy teorii falek (Wavelets) Podstawy teor falek (Wavelets) Ψ(). Transformaca Haara (97).. Przykład pewne metody zapsu obrazu Transformaca Haara Przykład zapsu obrazu -D Podstawy matematyczne transformac Algorytmy rozkładana funkc

Bardziej szczegółowo

Analiza rodzajów skutków i krytyczności uszkodzeń FMECA/FMEA według MIL STD - 1629A

Analiza rodzajów skutków i krytyczności uszkodzeń FMECA/FMEA według MIL STD - 1629A Analza rodzajów skutków krytycznośc uszkodzeń FMECA/FMEA według MIL STD - 629A Celem analzy krytycznośc jest szeregowane potencjalnych rodzajów uszkodzeń zdentyfkowanych zgodne z zasadam FMEA na podstawe

Bardziej szczegółowo

W praktyce często zdarza się, że wyniki obu prób możemy traktować jako. wyniki pomiarów na tym samym elemencie populacji np.

W praktyce często zdarza się, że wyniki obu prób możemy traktować jako. wyniki pomiarów na tym samym elemencie populacji np. Wykład 7 Uwaga: W praktyce często zdarza sę, że wynk obu prób możemy traktować jako wynk pomarów na tym samym elemence populacj np. wynk x przed wynk y po operacj dla tego samego osobnka. Należy wówczas

Bardziej szczegółowo

MATEMATYKA POZIOM ROZSZERZONY Kryteria oceniania odpowiedzi. Arkusz A II. Strona 1 z 5

MATEMATYKA POZIOM ROZSZERZONY Kryteria oceniania odpowiedzi. Arkusz A II. Strona 1 z 5 MATEMATYKA POZIOM ROZSZERZONY Krytera ocenana odpowedz Arkusz A II Strona 1 z 5 Odpowedz Pytane 1 2 3 4 5 6 7 8 9 Odpowedź D C C A B 153 135 232 333 Zad. 10. (0-3) Dana jest funkcja postac. Korzystając

Bardziej szczegółowo

Rozwiązywanie zadań optymalizacji w środowisku programu MATLAB

Rozwiązywanie zadań optymalizacji w środowisku programu MATLAB Rozwązywane zadań optymalzacj w środowsku programu MATLAB Zagadnene optymalzacj polega na znajdowanu najlepszego, względem ustalonego kryterum, rozwązana należącego do zboru rozwązań dopuszczalnych. Standardowe

Bardziej szczegółowo

Wykład 2: Uczenie nadzorowane sieci neuronowych - I

Wykład 2: Uczenie nadzorowane sieci neuronowych - I Wykład 2: Uczene nadzorowane sec neuronowych - I Algorytmy uczena sec neuronowych Na sposób dzałana sec ma wpływ e topologa oraz funkconowane poszczególnych neuronów. Z reguły topologę sec uznae sę za

Bardziej szczegółowo

WPROWADZENIE DO TEORII DECYZJI STATYSTYCZNYCH

WPROWADZENIE DO TEORII DECYZJI STATYSTYCZNYCH Ćwczene nr 1 Statystyczne metody wspomagana decyzj Teora decyzj statystycznych WPROWADZENIE DO TEORII DECYZJI STATYSTYCZNYCH Problem decyzyjny decyzja pocągająca za sobą korzyść lub stratę. Proces decyzyjny

Bardziej szczegółowo

WikiWS For Business Sharks

WikiWS For Business Sharks WkWS For Busness Sharks Ops zadana konkursowego Zadane Opracowane algorytmu automatyczne przetwarzającego zdjęce odręczne narysowanego dagramu na tablcy lub kartce do postac wektorowej zapsanej w formace

Bardziej szczegółowo

// Liczy srednie w wierszach i kolumnach tablicy "dwuwymiarowej" // Elementy tablicy są generowane losowo #include <stdio.h> #include <stdlib.

// Liczy srednie w wierszach i kolumnach tablicy dwuwymiarowej // Elementy tablicy są generowane losowo #include <stdio.h> #include <stdlib. Wykład 10 Przykłady różnych funkcji (cd) - przetwarzanie tablicy tablic (tablicy "dwuwymiarowej") - sortowanie przez "selekcję" Dynamiczna alokacja pamięci 1 // Liczy srednie w wierszach i kolumnach tablicy

Bardziej szczegółowo

Modele wieloczynnikowe. Modele wieloczynnikowe. Modele wieloczynnikowe ogólne. α β β β ε. Analiza i Zarządzanie Portfelem cz. 4.

Modele wieloczynnikowe. Modele wieloczynnikowe. Modele wieloczynnikowe ogólne. α β β β ε. Analiza i Zarządzanie Portfelem cz. 4. Modele weloczynnkowe Analza Zarządzane Portfelem cz. 4 Ogólne model weloczynnkowy można zapsać jako: (,...,,..., ) P f F F F = n Dr Katarzyna Kuzak lub (,...,,..., ) f F F F = n Modele weloczynnkowe Można

Bardziej szczegółowo

Paradygmaty programowania

Paradygmaty programowania Paradygmaty programowania Programowanie generyczne w C++ Dr inż. Andrzej Grosser Cz estochowa, 2016 2 Spis treści 1. Zadanie 3 5 1.1. Wprowadzenie.................................. 5 1.2. Obiekty funkcyjne................................

Bardziej szczegółowo

ZASTOSOWANIE KLASYCZNEGO ALGORYTMU GENETYCZNEGO DO ROZWIĄZANIA ZBILANSOWANEGO ZAGADNIENIA TRANSPORTOWEGO

ZASTOSOWANIE KLASYCZNEGO ALGORYTMU GENETYCZNEGO DO ROZWIĄZANIA ZBILANSOWANEGO ZAGADNIENIA TRANSPORTOWEGO Studa Materały. Mscellanea Oeconomcae Rok 6, Nr 2/22 Wydzał Zarządzana Admnstrac Unwersytetu Jana Kochanowskego w Kelcach Z a r z ą d z a n e f n a n s e Rafał Prońko ZASTOSOWANIE KLASYCZNEGO ALGORYTMU

Bardziej szczegółowo

Proste modele ze złożonym zachowaniem czyli o chaosie

Proste modele ze złożonym zachowaniem czyli o chaosie Proste modele ze złożonym zachowanem czyl o chaose 29 kwetna 2014 Komputer jest narzędzem coraz częścej stosowanym przez naukowców do ukazywana skrzętne ukrywanych przez naturę tajemnc. Symulacja, obok

Bardziej szczegółowo

Wyk lad 7 Baza i wymiar przestrzeni liniowej

Wyk lad 7 Baza i wymiar przestrzeni liniowej Wyk lad 7 Baza i wymiar przestrzeni liniowej 1 Baza przestrzeni liniowej Niech V bedzie przestrzenia liniowa. Powiemy, że podzbiór X V jest maksymalnym zbiorem liniowo niezależnym, jeśli X jest zbiorem

Bardziej szczegółowo

PODSTAWA WYMIARU ORAZ WYSOKOŚĆ EMERYTURY USTALANEJ NA DOTYCHCZASOWYCH ZASADACH

PODSTAWA WYMIARU ORAZ WYSOKOŚĆ EMERYTURY USTALANEJ NA DOTYCHCZASOWYCH ZASADACH PODSTAWA WYMIARU ORAZ WYSOKOŚĆ EMERYTURY USTALANEJ NA DOTYCHCZASOWYCH ZASADACH Z a k ł a d U b e z p e c z e ń S p o ł e c z n y c h Wprowadzene Nnejsza ulotka adresowana jest zarówno do osób dopero ubegających

Bardziej szczegółowo

ANALIZA PREFERENCJI SŁUCHACZY UNIWERSYTETU TRZECIEGO WIEKU Z WYKORZYSTANIEM WYBRANYCH METOD NIESYMETRYCZNEGO SKALOWANIA WIELOWYMIAROWEGO

ANALIZA PREFERENCJI SŁUCHACZY UNIWERSYTETU TRZECIEGO WIEKU Z WYKORZYSTANIEM WYBRANYCH METOD NIESYMETRYCZNEGO SKALOWANIA WIELOWYMIAROWEGO Artur Zaborsk Unwersytet Ekonomczny we Wrocławu ANALIZA PREFERENCJI SŁUCHACZY UNIWERSYTETU TRZECIEGO WIEKU Z WYKORZYSTANIEM WYBRANYCH METOD NIESYMETRYCZNEGO SKALOWANIA WIELOWYMIAROWEGO Wprowadzene Od ukazana

Bardziej szczegółowo

Dyskretne modele populacji

Dyskretne modele populacji Dyskretne modele populacji Micha l Machtel Adam Soboczyński 19 stycznia 2007 Typeset by FoilTEX Dyskretne modele populacji [1] Wst ep Dyskretny opis modelu matematycznego jest dobry dla populacji w których

Bardziej szczegółowo

Badanie współzależności dwóch cech ilościowych X i Y. Analiza korelacji prostej

Badanie współzależności dwóch cech ilościowych X i Y. Analiza korelacji prostej Badane współzależnośc dwóch cech loścowych X Y. Analza korelacj prostej Kody znaków: żółte wyróżnene nowe pojęce czerwony uwaga kursywa komentarz 1 Zagadnena 1. Zwązek determnstyczny (funkcyjny) a korelacyjny.

Bardziej szczegółowo

± Δ. Podstawowe pojęcia procesu pomiarowego. x rzeczywiste. Określenie jakości poznania rzeczywistości

± Δ. Podstawowe pojęcia procesu pomiarowego. x rzeczywiste. Określenie jakości poznania rzeczywistości Podstawowe pojęca procesu pomarowego kreślene jakośc poznana rzeczywstośc Δ zmerzone rzeczywste 17 9 Zalety stosowana elektrycznych przyrządów 1/ 1. możlwość budowy czujnków zamenających werne każdą welkość

Bardziej szczegółowo

ZAGADNIENIE TRANSPORTOWE

ZAGADNIENIE TRANSPORTOWE ZAGADNIENIE TRANSPORTOWE ZT.. Zagadee trasportowe w postac tablcy Z m puktów (odpowedo A,...,A m ) wysyłamy edorody produkt w loścach a,...,a m do puktów odboru (odpowedo B,...,B ), gdze est odberay w

Bardziej szczegółowo

Wskaźniki i dynamiczna alokacja pamięci. Spotkanie 4. Wskaźniki. Dynamiczna alokacja pamięci. Przykłady

Wskaźniki i dynamiczna alokacja pamięci. Spotkanie 4. Wskaźniki. Dynamiczna alokacja pamięci. Przykłady Wskaźniki i dynamiczna alokacja pamięci. Spotkanie 4 Dr inż. Dariusz JĘDRZEJCZYK Wskaźniki Dynamiczna alokacja pamięci Przykłady 11/3/2016 AGH, Katedra Informatyki Stosowanej i Modelowania 2 Wskaźnik to

Bardziej szczegółowo

Wykład 1 Zagadnienie brzegowe liniowej teorii sprężystości. Metody rozwiązywania, metody wytrzymałości materiałów. Zestawienie wzorów i określeń.

Wykład 1 Zagadnienie brzegowe liniowej teorii sprężystości. Metody rozwiązywania, metody wytrzymałości materiałów. Zestawienie wzorów i określeń. Wykład Zagadnene brzegowe lnowe teor sprężystośc. Metody rozwązywana, metody wytrzymałośc materałów. Zestawene wzorów określeń. Układ współrzędnych Kartezańsk, prostokątny. Ose x y z oznaczono odpowedno

Bardziej szczegółowo

7. Wykład VII: Warunki Kuhna-Tuckera

7. Wykład VII: Warunki Kuhna-Tuckera Wocech Grega, Metody Optymalzac 7 Wykład VII: Warunk Kuhna-Tuckera 7 Warunk koneczne stnena ekstremum Rozważane est zadane z ogranczenam nerównoścowym w postac: mn F( x ) x X X o F( x ), o { R x : h n

Bardziej szczegółowo

Poszukiwanie optymalnego wyrównania harmonogramu zatrudnienia metodą analityczną

Poszukiwanie optymalnego wyrównania harmonogramu zatrudnienia metodą analityczną Mieczysław POŁOŃSKI Wydział Budownictwa i Inżynierii Środowiska, Szkoła Główna Gospodarstwa Wieskiego, Warszawa, ul. Nowoursynowska 159 e-mail: mieczyslaw_polonski@sggw.pl Poszukiwanie optymalnego wyrównania

Bardziej szczegółowo

Wstęp Funkcja pliki nagłówkowe i typ tablicowy. Wstęp Pliki nagłówkowe i typ tablicowy. Wstęp Funkcja fill_array() Wstęp. Notatki. Notatki.

Wstęp Funkcja pliki nagłówkowe i typ tablicowy. Wstęp Pliki nagłówkowe i typ tablicowy. Wstęp Funkcja fill_array() Wstęp. Notatki. Notatki. Podstawy Programowana 2 Algorytmy Arkadusz Chrobot Zakład Informatyk 28 maa 2019 1 / 60 Plan Podsumowane 2 / 60 Dzseszy wykład będze dotyczył dwóch algorytmów sortowana, które powązane są z wcześne poruszanym

Bardziej szczegółowo

Ćw. 2. Wyznaczanie wartości średniego współczynnika tarcia i sprawności śrub złącznych oraz uzyskanego przez nie zacisku dla określonego momentu.

Ćw. 2. Wyznaczanie wartości średniego współczynnika tarcia i sprawności śrub złącznych oraz uzyskanego przez nie zacisku dla określonego momentu. Laboratorum z Podstaw Konstrukcj aszyn - - Ćw.. Wyznaczane wartośc średnego współczynnka tarca sprawnośc śrub złącznych oraz uzyskanego przez ne zacsku da okreśonego momentu.. Podstawowe wadomośc pojęca.

Bardziej szczegółowo

RÓWNOWAGA STACKELBERGA W GRACH SEKWENCYJNYCH

RÓWNOWAGA STACKELBERGA W GRACH SEKWENCYJNYCH Stansław KOWALIK e-mal: skowalk@wsb.edu.pl Wyższa Szkoła Bznesu Dąbrowa Górncza RÓWNOWAGA STACKELBERGA W GRACH SEKWENCYJNYCH Streszczene Praca dotyczy nekooperacynych sekwencynych ger dwuosobowych o sume

Bardziej szczegółowo

Rozdzia l 11. Przestrzenie Euklidesowe Definicja, iloczyn skalarny i norma. iloczynem skalarnym.

Rozdzia l 11. Przestrzenie Euklidesowe Definicja, iloczyn skalarny i norma. iloczynem skalarnym. Rozdzia l 11 Przestrzenie Euklidesowe 11.1 Definicja, iloczyn skalarny i norma Definicja 11.1 Przestrzenia Euklidesowa nazywamy par e { X K,ϕ }, gdzie X K jest przestrzenia liniowa nad K, a ϕ forma dwuliniowa

Bardziej szczegółowo

Grupowanie dokumentów XML ze względu na ich strukturę, z wykorzystaniem XQuery

Grupowanie dokumentów XML ze względu na ich strukturę, z wykorzystaniem XQuery Rozdzał 44 Grupowane dokumentów XML ze względu na ch strukturę, z wykorzystanem XQuery Streszczene. Popularność ęzyka XML oraz ego powszechne użyce spowodowały rozwó systemów przechowuących dokumenty XML.

Bardziej szczegółowo

1 Wskaźniki i zmienne dynamiczne, instrukcja przed zajęciami

1 Wskaźniki i zmienne dynamiczne, instrukcja przed zajęciami 1 Wskaźniki i zmienne dynamiczne, instrukcja przed zajęciami Celem tych zajęć jest zrozumienie i oswojenie z technikami programowania przy pomocy wskaźników w języku C++. Proszę przeczytać rozdział 8.

Bardziej szczegółowo

2012-10-11. Definicje ogólne

2012-10-11. Definicje ogólne 0-0- Defncje ogólne Logstyka nauka o przepływe surowców produktów gotowych rodowód wojskowy Utrzyywane zapasów koszty zwązane.n. z zarożene kaptału Brak w dostawach koszty zwązane.n. z przestoje w produkcj

Bardziej szczegółowo

SZTUCZNA INTELIGENCJA

SZTUCZNA INTELIGENCJA SZTUCZNA INTELIGENCJA WYKŁAD 15. ALGORYTMY GENETYCZNE Częstochowa 014 Dr hab. nż. Grzegorz Dudek Wydzał Elektryczny Poltechnka Częstochowska TERMINOLOGIA allele wartośc, waranty genów, chromosom - (naczej

Bardziej szczegółowo

Rozdzia l 3. Laboratorium 3. danych zawierajac

Rozdzia l 3. Laboratorium 3. danych zawierajac Rozdzia l 3 Laboratorium 3 3.1. Tablice Tablica jest struktura danych zawierajac a zmienne tego samego typu. CLR środowiska.net Framework wspiera tworzenie tablic jedno oraz wielo wymiarowych. 3.1.1. Tablice

Bardziej szczegółowo

11/22/2014. Jeśli stała c jest równa zero to takie gry nazywamy grami o sumie zerowej.

11/22/2014. Jeśli stała c jest równa zero to takie gry nazywamy grami o sumie zerowej. /22/24 Dwuosobowe gry o sume zero DO NAUCZENIA I ZAPAMIĘTANIA: Defnca zaps ger o sume zero, adaptaca ogólnych defnc. Punkt sodłowy Twerdzena o zwązkach punktu sodłowego z koncepcam rozwązań PRZYPOMNIENIE:

Bardziej szczegółowo

Functionalization. Funkcje w C. Marcin Makowski. 30 listopada Zak lad Chemii Teoretycznej UJ

Functionalization. Funkcje w C. Marcin Makowski. 30 listopada Zak lad Chemii Teoretycznej UJ w C Zak lad Chemii Teoretycznej UJ 30 listopada 2006 1 2 3 Inicjalizacja zmiennych Zmienne jednowymiarowe można inicjować przy ich definicji. #include i n t x = 1 ; l o n g day = 1000L * 60L

Bardziej szczegółowo

Minister Edukacji Narodowej Pani Katarzyna HALL Ministerstwo Edukacji Narodowej al. J. Ch. Szucha 25 00-918 Warszawa Dnia 03 czerwca 2009 r.

Minister Edukacji Narodowej Pani Katarzyna HALL Ministerstwo Edukacji Narodowej al. J. Ch. Szucha 25 00-918 Warszawa Dnia 03 czerwca 2009 r. Mnster Edukacj arodowej Pan Katarzyna HALL Mnsterstwo Edukacj arodowej al. J. Ch. Szucha 25 00-918 arszawa Dna 03 czerwca 2009 r. TEMAT: Propozycja zmany art. 30a ustawy Karta auczycela w forme lstu otwartego

Bardziej szczegółowo

Normy wektorów i macierzy

Normy wektorów i macierzy Rozdzia l 3 Normy wektorów i macierzy W tym rozdziale zak ladamy, że K C. 3.1 Ogólna definicja normy Niech ψ : K m,n [0, + ) b edzie przekszta lceniem spe lniaj acym warunki: (i) A K m,n ψ(a) = 0 A = 0,

Bardziej szczegółowo

MIKROEKONOMIA Prof. nadzw. dr hab. Jacek Prokop jproko@sgh.waw.pl

MIKROEKONOMIA Prof. nadzw. dr hab. Jacek Prokop jproko@sgh.waw.pl MIKROEKONOMIA Prof. nadzw. dr hab. Jacek Proko roko@sgh.waw.l Statyka dynamka olgoolstyczne struktury rynku. Modele krótkookresowe konkurenc cenowe w olgoolu.. Model ogranczonych mocy rodukcynych ako wyaśnene

Bardziej szczegółowo

ORGANIZACJA ZAJĘĆ OPTYMALIZACJA GLOBALNA WSTĘP PLAN WYKŁADU. Wykładowca dr inż. Agnieszka Bołtuć, pokój 304, e-mail: aboltuc@ii.uwb.edu.

ORGANIZACJA ZAJĘĆ OPTYMALIZACJA GLOBALNA WSTĘP PLAN WYKŁADU. Wykładowca dr inż. Agnieszka Bołtuć, pokój 304, e-mail: aboltuc@ii.uwb.edu. ORGANIZACJA ZAJĘĆ Wykładowca dr nż. Agneszka Bołtuć, pokój 304, e-mal: aboltuc@.uwb.edu.pl Lczba godzn forma zajęć: 15 godzn wykładu oraz 15 godzn laboratorum 15 godzn projektu Konsultacje: ponedzałk 9:30-11:00,

Bardziej szczegółowo

Wyk lad 9 Podpierścienie, elementy odwracalne, dzielniki zera

Wyk lad 9 Podpierścienie, elementy odwracalne, dzielniki zera Wyk lad 9 Podpierścienie, elementy odwracalne, dzielniki zera Określenie podpierścienia Definicja 9.. Podpierścieniem pierścienia (P, +,, 0, ) nazywamy taki podzbiór A P, który jest pierścieniem ze wzgledu

Bardziej szczegółowo

Regulamin promocji 14 wiosna

Regulamin promocji 14 wiosna promocja_14_wosna strona 1/5 Regulamn promocj 14 wosna 1. Organzatorem promocj 14 wosna, zwanej dalej promocją, jest JPK Jarosław Paweł Krzymn, zwany dalej JPK. 2. Promocja trwa od 01 lutego 2014 do 30

Bardziej szczegółowo

Functionalization. Jeszcze o funkcjach i strukturze projektu. Marcin Makowski. 3 grudnia Zak lad Chemii Teoretycznej UJ

Functionalization. Jeszcze o funkcjach i strukturze projektu. Marcin Makowski. 3 grudnia Zak lad Chemii Teoretycznej UJ Jeszcze o funkcjach i strukturze projektu Zak lad Chemii Teoretycznej UJ 3 grudnia 2008 1 2 3 4 5 typedef Plan typedef specyfikator typu nazwa S luży do stworzenia nowej nazwy dla jakiegoś typu. Nazwa

Bardziej szczegółowo

Instrukcja do ćwiczeń laboratoryjnych z przedmiotu: Badania operacyjne. Temat ćwiczenia: Problemy rozkroju materiałowego, zagadnienia dualne

Instrukcja do ćwiczeń laboratoryjnych z przedmiotu: Badania operacyjne. Temat ćwiczenia: Problemy rozkroju materiałowego, zagadnienia dualne Instrukca do ćwczeń laboratorynych z przedmotu: Badana operacyne Temat ćwczena: Problemy rozkrou materałowego, zagadnena dualne Zachodnopomorsk Unwersytet Technologczny Wydzał Inżyner Mechanczne Mechatronk

Bardziej szczegółowo

Statystyka Opisowa 2014 część 2. Katarzyna Lubnauer

Statystyka Opisowa 2014 część 2. Katarzyna Lubnauer Statystyka Opsowa 2014 część 2 Katarzyna Lubnauer Lteratura: 1. Statystyka w Zarządzanu Admr D. Aczel 2. Statystyka Opsowa od Podstaw Ewa Waslewska 3. Statystyka, Lucjan Kowalsk. 4. Statystyka opsowa,

Bardziej szczegółowo

Teoria miary WPPT IIr. semestr zimowy 2009 Wyk lady 6 i 7. Mierzalność w sensie Carathéodory ego Miara Lebesgue a na prostej

Teoria miary WPPT IIr. semestr zimowy 2009 Wyk lady 6 i 7. Mierzalność w sensie Carathéodory ego Miara Lebesgue a na prostej Teoria miary WPPT IIr. semestr zimowy 2009 Wyk lady 6 i 7. Mierzalność w sensie Carathéodory ego Miara Lebesgue a na prostej 27-28/10/09 ZBIORY MIERZALNE WZGLȨDEM MIARY ZEWNȨTRZNEJ Niech µ bȩdzie miar

Bardziej szczegółowo

ANALIZA KORELACJI WYDATKÓW NA KULTURĘ Z BUDŻETU GMIN ORAZ WYKSZTAŁCENIA RADNYCH

ANALIZA KORELACJI WYDATKÓW NA KULTURĘ Z BUDŻETU GMIN ORAZ WYKSZTAŁCENIA RADNYCH Potr Mchalsk Węzeł Centralny OŻK-SB 25.12.2013 rok ANALIZA KORELACJI WYDATKÓW NA KULTURĘ Z BUDŻETU GMIN ORAZ WYKSZTAŁCENIA RADNYCH Celem ponższej analzy jest odpowedź na pytane: czy wykształcene radnych

Bardziej szczegółowo

Podstawy informatyki. Elektrotechnika I rok. Język C++ Operacje na danych - wskaźniki Instrukcja do ćwiczenia

Podstawy informatyki. Elektrotechnika I rok. Język C++ Operacje na danych - wskaźniki Instrukcja do ćwiczenia Podstawy informatyki Elektrotechnika I rok Język C++ Operacje na danych - wskaźniki Instrukcja do ćwiczenia Katedra Energoelektroniki i Automatyki Systemów Przetwarzania Energii AGH Kraków 2017 Tematyka

Bardziej szczegółowo

KRZYWA BÉZIERA TWORZENIE I WIZUALIZACJA KRZYWYCH PARAMETRYCZNYCH NA PRZYKŁADZIE KRZYWEJ BÉZIERA

KRZYWA BÉZIERA TWORZENIE I WIZUALIZACJA KRZYWYCH PARAMETRYCZNYCH NA PRZYKŁADZIE KRZYWEJ BÉZIERA KRZYWA BÉZIERA TWORZENIE I WIZUALIZACJA KRZYWYCH PARAMETRYCZNYCH NA PRZYKŁADZIE KRZYWEJ BÉZIERA Krzysztof Serżęga Wyższa Szkoła Informatyk Zarządzana w Rzeszowe Streszczene Artykuł porusza temat zwązany

Bardziej szczegółowo

Stanisław Cichocki Natalia Nehrebecka. Zajęcia 4

Stanisław Cichocki Natalia Nehrebecka. Zajęcia 4 Stansław Cchock Natala Nehrebecka Zajęca 4 1. Interpretacja parametrów przy zmennych zerojedynkowych Zmenne 0-1 Interpretacja przy zmennej 0 1 w modelu lnowym względem zmennych objaśnających Interpretacja

Bardziej szczegółowo

ALGEBRY HALLA DLA POSETÓW SKOŃCZONEGO TYPU PRINJEKTYWNEGO

ALGEBRY HALLA DLA POSETÓW SKOŃCZONEGO TYPU PRINJEKTYWNEGO ALGEBRY HALLA DLA POSETÓW SKOŃCZONEGO TYPU PRINJEKTYWNEGO NA PODSTAWIE REFERATU JUSTYNY KOSAKOWSKIEJ. Moduły prnjektywne posety skończonego typu prnjektywnego Nech I będze skończonym posetem. Przez max

Bardziej szczegółowo

KURS STATYSTYKA. Lekcja 1 Statystyka opisowa ZADANIE DOMOWE. www.etrapez.pl Strona 1

KURS STATYSTYKA. Lekcja 1 Statystyka opisowa ZADANIE DOMOWE. www.etrapez.pl Strona 1 KURS STATYSTYKA Lekcja 1 Statystyka opsowa ZADANIE DOMOWE www.etrapez.pl Strona 1 Część 1: TEST Zaznacz poprawną odpowedź (tylko jedna jest prawdzwa). Pytane 1 W statystyce opsowej mamy pełne nformacje

Bardziej szczegółowo

SZACOWANIE NIEPEWNOŚCI POMIARU METODĄ PROPAGACJI ROZKŁADÓW

SZACOWANIE NIEPEWNOŚCI POMIARU METODĄ PROPAGACJI ROZKŁADÓW SZACOWANIE NIEPEWNOŚCI POMIARU METODĄ PROPAGACJI ROZKŁADÓW Stefan WÓJTOWICZ, Katarzyna BIERNAT ZAKŁAD METROLOGII I BADAŃ NIENISZCZĄCYCH INSTYTUT ELEKTROTECHNIKI ul. Pożaryskego 8, 04-703 Warszawa tel.

Bardziej szczegółowo

METODA UNITARYZACJI ZEROWANEJ Porównanie obiektów przy ocenie wielokryterialnej. Ranking obiektów.

METODA UNITARYZACJI ZEROWANEJ Porównanie obiektów przy ocenie wielokryterialnej. Ranking obiektów. Opracowane: Dorota Mszczyńska METODA UNITARYZACJI ZEROWANEJ Porównane obektów przy ocene welokryteralnej. Rankng obektów. Porównane wybranych obektów (warantów decyzyjnych) ze względu na różne cechy (krytera)

Bardziej szczegółowo

Odtworzenie wywodu metodą wstępującą (bottom up)

Odtworzenie wywodu metodą wstępującą (bottom up) Przeglądane wejśca od lewej strony do prawej L (k) Odtwarzane wywodu prawostronnego Wystarcza znajomosc "k" następnych symbol łańcucha wejścowego hstor dotychczasowych redukcj, aby wyznaczyc jednoznaczne

Bardziej szczegółowo

p Z(G). (G : Z({x i })),

p Z(G). (G : Z({x i })), 3. Wykład 3: p-grupy twerdzena Sylowa. Defncja 3.1. Nech (G, ) będze grupą. Grupę G nazywamy p-grupą, jeżel G = dla pewnej lczby perwszej p oraz k N. Twerdzene 3.1. Nech (G, ) będze p-grupą. Wówczas W

Bardziej szczegółowo

PORADNIK KANDYDATA. Wkrótce w nauka w szkole w jaki sposób je. zasadniczych szkole

PORADNIK KANDYDATA. Wkrótce w nauka w szkole w jaki sposób je. zasadniczych szkole Drog Gmnazjalsto, Wkrótce w nauka w szkole w jak sposób je jedno z z w pracodawców. zasadnczych szkole racjonalnego wyboru przestrz W prowadzona przy pomocy systemu elektroncznego. Rekrutacja wspomagana

Bardziej szczegółowo

KOLOKWIUM PODSTAWY PROGRAMOWANIA

KOLOKWIUM PODSTAWY PROGRAMOWANIA KOLOKWIUM PODTAWY PROGRAMOWANIA BARTOZ ZIELIŃKI pis treści 1. Zasady ogólne 2 2. Zadanie cześć wspólna 3 2.1. Cel zadania 3 2.2. Wskazówki 4 2.3. Uwagi na temat uruchamiania programów 5 3. Zestawy 7 3.1.

Bardziej szczegółowo

Matematyka A, klasówka, 24 maja zania zadań z kolokwium z matematyki A w nadziei, że pope lni lem wielu b le. rozwia

Matematyka A, klasówka, 24 maja zania zadań z kolokwium z matematyki A w nadziei, że pope lni lem wielu b le. rozwia Matematyka A, klasówka, 4 maja 5 Na prośbe jednej ze studentek podaje zania zadań z kolokwium z matematyki A w nadziei, że pope lni lem wielu b le dów Podać definicje wektora w lasnego i wartości w lasnej

Bardziej szczegółowo

Stanisław Cichocki. Natalia Nehrebecka. Wykład 6

Stanisław Cichocki. Natalia Nehrebecka. Wykład 6 Stansław Cchock Natala Nehrebecka Wykład 6 1 1. Interpretacja parametrów przy zmennych objaśnających cągłych Semelastyczność 2. Zastosowane modelu potęgowego Model potęgowy 3. Zmenne cągłe za zmenne dyskretne

Bardziej szczegółowo

Czym jest całka? Całkowanie numeryczne

Czym jest całka? Całkowanie numeryczne Całkowanie numeryczne jest to zagadnienie z metod elementów skończonych (MES). Korzystając z całkowania numerycznego możemy obliczyć wartość dowolnej całki jednowymiarowej oznaczonej. Wynik jest zawsze

Bardziej szczegółowo

> C++ dynamiczna alokacja/rezerwacja/przydział pamięci. Dane: Iwona Polak. Uniwersytet Śląski Instytut Informatyki

> C++ dynamiczna alokacja/rezerwacja/przydział pamięci. Dane: Iwona Polak. Uniwersytet Śląski Instytut Informatyki > C++ dynamiczna alokacja/rezerwacja/przydział pamięci Dane: Iwona Polak iwona.polak@us.edu.pl Uniwersytet Śląski Instytut Informatyki 1429536600 > Dzisiejsze zajęcia sponsorują słówka: new oraz delete

Bardziej szczegółowo

65120/ / / /200

65120/ / / /200 . W celu zbadana zależnośc pomędzy płcą klentów ch preferencjam, wylosowano kobet mężczyzn zadano m pytane: uważasz za lepszy produkt frmy A czy B? Wynk były następujące: Odpowedź Kobety Mężczyźn Wolę

Bardziej szczegółowo

Programowanie w C++ Wykład 5. Katarzyna Grzelak. 16 kwietnia K.Grzelak (Wykład 1) Programowanie w C++ 1 / 27

Programowanie w C++ Wykład 5. Katarzyna Grzelak. 16 kwietnia K.Grzelak (Wykład 1) Programowanie w C++ 1 / 27 Programowanie w C++ Wykład 5 Katarzyna Grzelak 16 kwietnia 2018 K.Grzelak (Wykład 1) Programowanie w C++ 1 / 27 Pojęcia z poprzednich wykładów Tablica to ciag obiektów tego samego typu, zajmujacy ciagły

Bardziej szczegółowo

Zadane 1: Wyznacz średne ruchome 3-okresowe z następujących danych obrazujących zużyce energ elektrycznej [kwh] w pewnym zakładze w mesącach styczeń - lpec 1998 r.: 400; 410; 430; 40; 400; 380; 370. Zadane

Bardziej szczegółowo

Paradygmaty programowania. Paradygmaty programowania

Paradygmaty programowania. Paradygmaty programowania Paradygmaty programowania Paradygmaty programowania Dr inż. Andrzej Grosser Cz estochowa, 2013 2 Spis treści 1. Zadanie 1 5 1.1. Wprowadzenie.................................. 5 1.2. Wskazówki do zadania..............................

Bardziej szczegółowo

Drzewa AVL definicje

Drzewa AVL definicje Drzewa AVL definicje Uporzadkowane drzewo binarne jest drzewem AVL 1, jeśli dla każdego wez la różnica wysokości dwóch jego poddrzew wynosi co najwyżej 1. M D S C H F K Z typowe drzewo AVL minimalne drzewa

Bardziej szczegółowo

architektura komputerów w. 3 Arytmetyka komputerów

architektura komputerów w. 3 Arytmetyka komputerów archtektura komputerów w. 3 Arytmetyka komputerów Systemy pozycyjne - dodawane w systeme dwójkowym 100101011001110010101 100111101000001000 0110110011101 1 archtektura komputerów w 3 1 Arytmetyka bnarna.

Bardziej szczegółowo