Kuva: Pexels

Algoritmien ydin - Osa 2

Opi tekniikoita ja ideoita, joista on hyötyä tehokkaiden algoritmien luomisessa!

Jatka siitä mihin Tietorakenteet ja algoritmit I -opintojaksolla jäit.

Ohjelmoinnin peruskursseilla olemme oppineet käyttämään muuttujia, ehtoja, silmukoita, taulukoita ja muita ohjelmoinnin menetelmiä. Nyt on aika siirtyä askel eteenpäin ohjelmointitaidon opettelussa ja alkaa kiinnittää huomiota myös algoritmien tehokkuuteen.

Tutustumme opintojaksolla sekä algoritmien suunnitteluun teoriaan että käytäntöön – haluamme ymmärtää syvällisesti, mistä algoritmeissa on kysymys, mutta myös osata toteuttaa niitä käytännössä.

Syksyllä opintojakso järjestetään avoimena MOOC-verkkokurssina (Massive open online course), jolla opiskelu on hyvin itsenäistä. Lisäksi opintojaksolla on viikoittainen luento sekä pajaohjausta, joihin osallistuminen on vapaaehtoista. Opintojakso on mahdollista suorittaa myös keväällä monimuotokurssina.

Material

Registration and fee

Opintojakso on maksuton.

Ei ennakkoilmoittautumista. Saat ohjeet kurssi-ilmoittautumiseen kurssimateriaalissa kun olet edennyt viimeisen viikon tehtäviin.

Kurssimateriaali on avoin kaikille ilman kurssi-ilmoittautumista. Mikäli haluat saada opintojaksosta merkinnän Helsingin yliopiston opintosuoritusrekisteriin, tulee sinun ilmoittautua Avoimen yliopiston opintojakson loppupuolella.

Huom!

  • Opintojakson ilmoittautumislomake on auki vain määritellyn ajan (20.12.2020 saakka).
  • Jos ilmoittautumislomakkeelle tai mooc-sivustolle syötetyissä henkilötiedoissa on puutteita tai ne ovat virheellisiä, on suorituksen rekisteröinti mahdotonta.

Jos sinulla on kysyttävää Avoimeen yliopistoon ilmoittautumisesta, ota yhteyttä: avoinyo-tietojenkasittelytiede@helsinki.fi

Opintojakson sisältöön tai suoritukseen liittyvissä kysymyksissä voit olla yhteydessä opintojakson vastuuhenkilöön (ahslaaks@cs.helsinki.fi)

Käytännön ohjeita opiskeluun
Järjestelyt erityistä tukea tarvitseville

Description

Voit suorittaa opintojakson osana Tietojenkäsittelytieteen osaston DEFA-opintoja (Digital Education For All).

Tietojenkäsittelytieteen kandiohjelma vastaa opintojaksosta.

Esitietoina edellytetään kurssin Tietorakenteet ja algoritmit I (AYTKT200012) tiedot (ja kyseisen kurssin esitiedot).

Kurssin jälkeen osaat

  • analysoida aika- ja tilavaativuutta ja algoritmin oikeellisuutta normaaleissa tilanteissa,
  • selittää toteutusperiaatteet kattavalle kokoelmalle perustietorakenteita ja -algoritmeja (esim. verkkorakenteet, polun etsiminen) ja perustella niiden aika- ja tilavaativuudet, sekä
  • käyttää sujuvasti em. tietorakenteita ja algoritmeja sekä ohjelmointikielen tarjoamia työkaluja (esim. rekursio) ongelmanratkaisussa.

Opintojakson keskeisiä aihealueita ovat

  • algoritmien suunnittelun ja analyysin perustekniikoita: rekursio, algoritmin oikeellisuuden todistaminen, rekursiivisten algoritmien aika- ja tilavaativuus
  • verkot eli graafit: peruskäsitteet, polunetsintä, virittävät puut
  • ohjelmointikielten tarjoamat valmiit tietorakennetoteutukset.
  • Kurssi perustuu tietojenkäsittelytieteen osastolla laadittuun oppimateriaallin.
  • Suositeltu oheislukemisto on Cormen, Leiserson, Rivest, Stein: Introduction to Algorithms.

Opintojakson arvosana määrittyy viikottain suoritettavien automaattisesti arvosteltavien tehtävien mukaan.

Arvosteluasteikko on 0-5.

Opintojaksoon liittyvät kysymykset:

Opintojakson opiskelu tapahtuu itsenäisesti MOOC-oppimisympäristössä 26.10.2020-20.12.2020 välisenä aikana.

  1. Opiskele kurssimateriaali ja
  2. tee kurssimateriaalissa olevat tehtävät. Opintojakson tehtävät suoritetaan MOOC-ympäristössä, josta löydät materiaalit ja ohjeet opintojakson suorittamiseksi.
  3. Ilmoittaudu opintojaksolle Avoimen yliopiston kautta. Saat ohjeet kurssi-ilmoittautumiseen kurssimateriaalissa kun olet edennyt viimeisen viikon tehtäviin.
  4. Lisäksi opintojaksolla on viikoittainen luento sekä pajaohjausta, joihin osallistuminen on vapaaehtoista.

Tehtävät

Opintojakso muodostuu 7 viikosta, joista jokaisella on 6 tehtävää (eli yhteensä 42 tehtävää). Tehtävät palautetaan sähköisesti, ja niiden arvostelu on automaattinen. Voit ladata opintojakson oppikirjan kohdasta Materiaalit.

Tehtävien deadlinet ovat sunnuntaisin klo 23:59 seuraavan aikataulun mukaisesti:

  • 8.11., 15.11., 22.11., 29.11., 6.12., 13.12., 20.12.

Opintojakso on osa tietojenkäsittelytieteen koulutusohjelman aineopintoja.

Kurssilla opittuja menetelmiä sovelletaan kurssilla Aineopintojen harjoitustyö: Tietorakenteet ja algoritmit.