Joh­dan­to
Ai­ka­tau­lu
Ope­tus­muo­dot
Oh­jel­moin­ti­teh­tä­vät
Esi­suo­ri­tus TIEP109
Tent­ti
Esi­tie­to­vaa­ti­muk­set
Työ­mää­rä
Mui­ta suo­ri­tus­mah­dol­li­suuk­sia
Van­hat tie­dot­teet


Luen­to­teks­ti
Luen­to­ruu­dut
Oh­jel­moin­ti­teh­tä­vät
Oh­jel­moin­ti­esi­merk­ke­jä
Kurs­sin van­ha TIM-si­vu
 

TIEA211 Al­go­rit­mit 2

19.3.2024‒23.5.2024

Si­vu pe­rus­tet­tu 7.3.2024

Joh­dan­to

Kurs­sit Al­go­rit­mit 1 ja Al­go­rit­mit 2 kat­ta­vat yh­des­sä tär­keim­mät al­go­rit­mit ja tie­to­ra­ken­teet se­kä nii­den ana­ly­soin­ti- ja suun­nit­te­lu­me­ne­tel­mät.

Vuon­na 2023 kurs­sin oh­jel­moin­ti­teh­tä­vät uu­sit­tiin täy­del­li­ses­ti. Vuon­na 2024 kurs­sin luen­to­ruu­dut ja kir­jal­li­nen ai­neis­to uu­dis­te­taan täy­sin. Nä­mä muu­tok­set siir­tä­vät kurs­sin pai­no­pis­tet­tä teo­rias­ta käy­tän­nön oh­jel­moin­nin suun­taan.

Opet­ta­ja­na toi­mii Ant­ti Val­ma­ri ja as­sis­tent­ti­na Vil­le Ran­ta­la.

Ai­ka­tau­lu

päivä19.3.21.3.2.4.4.4. 9.4.11.4.16.4.18.4.23.4. 25.4.30.4.2.5.7.5.14.5. 16.5.
ruutuun1424344757 678498111125

Kurs­si pi­de­tään 19.3.2024‒23.5.2024.

Poik­keuk­set:

maa­nan­tai tiis­tai kes­ki­viik­ko tors­tai per­jan­tai
 8:15‒ 9:00
 9:15‒10:00
10:15‒11:00 Neu­von­ta Ag B122.1 Al­fa Luen­to Ag B103 Au­di­to­rio 3
11:15‒12:00
12:15‒13:00 Neu­von­ta Ag C231.1
13:15‒14:00
14:15‒15:00 Luen­to Ag B103 Au­di­to­rio 3
15:15‒16:00
16:15‒17:00 Neu­von­ta Ag B122.1 Al­fa
17:15‒18:00

Ope­tus­muo­dot

Kurs­sil­la on luen­to­ja, oh­jel­moin­ti­teh­tä­viä, neu­von­ta­ti­lai­suuk­sia ja tent­ti. Luen­toi­hin ja neu­von­ta­ti­lai­suuk­siin osal­lis­tu­mi­nen on va­paa­eh­tois­ta. Oh­jel­moin­ti­teh­tä­vät ja tent­ti ovat pa­kol­li­set.

Luen­not nou­dat­ta­vat kes­ken­eräis­tä teks­tiä ja sii­tä teh­ty­jä luen­to­ruu­tu­ja. Nii­tä täy­den­ne­tään kurs­sin ede­tes­sä. Luen­to­teks­tin lo­mas­sa on pie­niä ja kes­ki­suu­ria teh­tä­viä, joi­hin on vas­tauk­set luen­to­teks­tin lo­pus­sa. (Vuot­ta 2023 edel­tä­neet teks­tit, luen­to­ruu­dut ja luen­to­vi­deot ovat saa­ta­va­na TIM-si­vun kaut­ta.)

Kurs­sin oh­jel­moin­ti­teh­tä­vät on uu­sit­tu täy­del­li­ses­ti vuon­na 2023. Niis­tä on al­la oma koh­ta.

Neu­von­ta­ti­lai­suuk­sis­sa kes­kus­tel­laan tai ker­ro­taan niis­tä luen­to­teks­tin teh­tä­vis­tä jois­ta opis­ke­li­jat ha­lua­vat kes­kus­tel­la tai ky­syä, ja an­ne­taan apua oh­jel­moin­ti­teh­tä­vien te­ke­mi­seen. Oh­jel­moin­ti­teh­tä­viä kos­ke­viin ky­sy­myk­siin py­ri­tään vas­taa­maan ta­val­la, jo­ka aut­taa eteen­päin mut­ta ei an­na liian pal­jon val­mii­na. Neu­vo­jil­la on oi­keus tar­vit­taes­sa il­moit­taa, et­tä tä­män yk­si­tyis­koh­tai­sem­pia neu­vo­ja ei voi­da an­taa.

Opet­ta­jat neu­vo­vat tar­vit­taes­sa myös säh­kö­pos­tit­se sii­nä mää­rin kuin hei­dän ai­ka­tau­lun­sa sal­lii. Lä­he­tä säh­kö­pos­ti­ky­sy­myk­set mo­lem­mil­le opet­ta­jil­le, niin saat vas­tauk­sen var­mem­min pian.

Tent­tin saa tul­la sit­ten kun on saa­nut oh­jel­moin­ti­teh­tä­vis­tä riit­tä­väs­ti pis­tei­tä, kat­so tark­ka ai­ka­ra­ja koh­das­ta Tent­ti. Hy­väk­sy­tyt oh­jel­moin­ti­teh­tä­vät ovat voi­mas­sa kun­nes vii­mei­nen tent­ti on pi­det­ty. Ai­kai­sem­min pa­lau­tet­tu­ja oh­jel­moin­ti­teh­tä­viä saa pa­laut­taa myö­hem­pi­nä vuo­si­na uu­del­leen, mut­ta TIM tar­kas­taa ne kul­loin­kin voi­mas­sa ole­vien vaa­ti­mus­ten mu­kaan. Vuon­na 2024 vaa­ti­muk­set ovat sa­mat kuin 2023.

Kurs­sin ar­vo­sa­na on ten­tin ar­vo­sa­na kui­ten­kin si­ten, et­tä jos vai­heis­ta P3, A1, R2 ja E1 on hy­väk­syt­ty useam­pi kuin yk­si tai kaik­kiaan on hy­väk­syt­ty ai­na­kin kuu­si vai­het­ta, ja ten­tin ar­vo­sa­na on 1, 2, 3 tai 4, niin ar­vo­sa­naa ko­ro­te­taan yh­del­lä.

Kai­ken muun voi suo­rit­taa etä­nä pait­si ten­tin.

Oh­jel­moin­ti­teh­tä­vät

Kurs­sil­la on tar­jol­la vii­si oh­jel­moin­ti­teh­tä­vää, jois­ta osas­sa on vä­li­pa­lau­tuk­sia. Kak­si en­sim­mäis­tä teh­tä­vää ovat vain yleis­tä oh­jel­moin­nin har­joit­te­lua. Kol­me jäl­kim­mäis­tä liit­tyy kurs­sin asioi­hin. Opet­ta­jan mal­li­vas­taus ku­hun­kin teh­tä­vään on al­le 150 ri­viä pait­si lu­ku­jär­jes­tys­teh­tä­vään al­le 350 ri­viä. Teh­tä­vien ku­vauk­set löy­ty­vät tääl­tä. Täs­tä teks­tis­tä saat­taa ol­la apua oh­jel­moin­nis­sa al­kuun pää­se­mi­sek­si.

Ku­ten opis­ke­lus­sa yleen­sä, pla­gioin­ti on kiel­let­ty. Mui­den ih­mis­ten tai te­ko­älyn kir­joit­ta­maa koo­dia ei saa käyt­tää, seu­raa­vin poik­keuk­sin. Ope­tus- tai ha­vain­nol­lis­tus­tar­koi­tuk­ses­sa esi­tet­ty­jä hy­vin ly­hyi­tä koo­din­pät­kiä saa käyt­tää (muu­ta­ma kym­me­nen merk­kiä, tyy­liin ”näin teet sil­mu­kan Ja­val­la”). Tä­män kurs­sin ai­neis­tos­sa esi­tet­ty­jä pit­kiä­kin koo­din­pät­kiä saa käyt­tää. Ideoi­ta saa ha­kea kir­jois­ta ja ne­tis­tä se­kä ky­syä muil­ta, mu­kaan lu­kien te­ko­äly. Jos neu­vot mui­ta, pi­dä huo­li et­tä neu­vot idea­ta­sol­la et­kä an­na val­mis­ta koo­dia.

Älä jul­kai­se omia oh­jel­moin­ti­teh­tä­vien vas­tauk­sia­si Git­Hu­bis­sa ei­kä muual­la­kaan.

Ku­kin teh­tä­vä pa­lau­te­taan TIM-si­vul­le, jo­ka tes­taa pa­lau­tuk­sen ja an­taa pis­teen tai vir­he­il­moi­tuk­sen. Pa­laut­taa saa niin mon­ta ker­taa kuin ha­luaa. Vii­mei­sin pa­lau­tus jää voi­maan.

Yh­teen­sä teh­tä­vis­sä on 9 (vä­li)­pa­lau­tus­ta. Kurs­sin lä­päi­se­mi­sek­si TIMin pi­tää hy­väk­syä yh­teen­sä ai­na­kin 5 (vä­li)­pa­lau­tus­ta, jois­ta ai­na­kin yk­si on P3, A1, R2 tai E1.

  1. Pe­rin­nön­ja­ko (3 pa­lau­tus­ta) P1, P2 ja P3
  2. Lu­ku­jär­jes­tys (2 pa­lau­tus­ta) L1 ja L2
  3. Ai­ka­tau­lu (1 pa­lau­tus) A1
  4. Ri­vi­ja­ko (2 pa­lau­tus­ta) R1 ja R2
  5. Esi­tie­dot (1 pa­lau­tus) E1

Oman pis­te­mää­rä­si voit tar­kas­taa klik­kaa­mal­la nap­pia ”Las­ke pis­tee­si” tääl­lä.

Esi­suo­ri­tus TIEP109

Esi­suo­ri­tus on va­paa­eh­toi­nen. Se muo­dos­tuu kah­des­ta oh­jel­moin­ti­teh­tä­väs­tä, joi­den tar­koi­tus on ke­hit­tää pe­rus­oh­jel­moin­ti­tai­toa. Ne on tar­koi­tet­tu teh­tä­väk­si en­nen TIEA211:n oh­jel­moin­ti­teh­tä­viä. Ne hy­väk­sy­tys­ti suo­rit­ta­mal­la saat yh­den opin­to­pis­teen kurs­sis­ta TIEP109 Tie­to­tek­nii­kan pe­rus­opin­to­ja. Suo­ri­tus­mer­kin­nän esi­suo­ri­tuk­ses­ta voi saa­da vain yh­tä­ai­kaa TIEA211:n suo­ri­tus­mer­kin­nän kans­sa.

Nii­hin pä­te­vät sa­mat sään­nöt kuin TIEA211:n oh­jel­moin­ti­teh­tä­viin. Nii­den­kin ku­vauk­set löy­ty­vät tääl­tä. Nii­den pis­tei­den seu­ran­taan on eri si­vu kuin TIEA211:n pis­teil­le. Se on tääl­lä.

Tent­ti

En­sim­mäi­nen tent­ti on koh­das­sa Ai­ka­tau­lu il­moi­tet­tu­na ajan­koh­ta­na. Myö­hem­min jär­jes­te­tään kak­si tent­tiä li­sää.

Oh­jel­moin­ti­teh­tä­vien pi­tää ol­la hy­väk­syt­tyi­nä TIMis­sä sil­lä het­kel­lä kun il­moit­tau­tuu tent­tiin SISUs­sa. Jos tent­tiin ei tar­vit­se il­moit­tau­tua SISUs­sa, niin oh­jel­moin­ti­teh­tä­vien pi­tää ol­la hy­väk­syt­tyi­nä TIMis­sä kol­me vuo­ro­kaut­ta en­nen tent­ti­päi­vän aa­mua.

Esi­tie­to­vaa­ti­muk­set

ITKA201 Al­go­rit­mit 1 tai vas­taa­vat tie­dot. Vah­vas­ti suo­si­tel­laan TIEP111 Oh­jel­moin­ti 2 tai vas­taa­vat oh­jel­moin­ti­tai­dot. Vi­ral­li­ses­ti oh­jel­moin­nis­ta riit­tää ITKP102 Oh­jel­moin­ti 1 tai vas­taa­vat oh­jel­moin­ti­tai­dot, mut­ta sil­tä poh­jal­ta kurs­si voi ol­la vai­kea. Jos koet oh­jel­moin­ti­tai­to­si kai­paa­van ko­hen­ta­mis­ta, lue oh­jel­moin­ti­esi­merk­ke­jä ja/tai suo­ri­ta Esi­suo­ri­tus TIEP109.

Työ­mää­rä

Va­rau­du sii­hen, et­tä työ­mää­rä on suu­ri. Vi­ral­li­sen las­ku­ta­van mu­kaan 4 op tar­koit­tai­si 107 tun­tia opis­ke­li­jan työ­tä. Mi­nus­ta vi­ral­li­nen las­ku­ta­pa on vää­rä, mut­ta 90 tun­tia voi­daan kyl­lä tar­vi­ta.

Va­raa täl­le kurs­sil­le 10,5 tun­tia vii­kos­sa. Täs­sä yh­tey­des­sä tun­ti tar­koit­taa 45 mi­nuut­tia opis­ke­lua ja 15 mi­nuut­tia tau­koa. Tauot ovat tär­kei­tä, ja on­han myös lä­hi­ope­tuk­ses­sa ai­na var­tin tau­ko jo­kais­ta kol­men var­tin luen­toa tai de­moa koh­den.

Mui­ta suo­ri­tus­mah­dol­li­suuk­sia

Hel­sin­gin yli­opis­ton MOOC Tie­to­ra­ken­teet ja al­go­rit­mit II kel­paa kor­vaa­maan TIEA211 Al­go­rit­mit 2.

Van­hat tie­dot­teet

Ei vie­lä ole.