EDAA01 Programmeringsteknik - fördjupningskurs

Storlek: px
Starta visningen från sidan:

Download "EDAA01 Programmeringsteknik - fördjupningskurs"

Transkript

1 EDAA01 Programmeringsteknik - fördjupningskurs Läsperiod lp 1+2 (Ges även lp 3) 7.5 hp anna.axelsson@cs.lth.se sandra.nilsson@cs.lth.se Förkunskapskrav: Godkänd på obligatoriska moment och/eller på tentamen i någon av grundkurserna EDA016, EDA011 eller EDA017 eller Godkänt betyg på grundkursen EDA501 eller EDAA20 PFK (Introduktion) HT / 15

2 Detta kan du... Förkunskaper en hel del om programmering och objektorientering begrepp som klass, objekt, attribut, metod, parameter skriva mindre program i programspråket Java skriva och debugga program i utvecklingsverktyget Eclipse använda vektorer, matriser och (delvis) klassen ArrayList enkla algoritmer som t.ex. linjärsökning, insättning i en redan sorterad vektor använda arv superklass, subklass, abstrakt metod PFK (Introduktion) HT / 15

3 Detta ska du lära dig... Kursens mål mer om programmering och objektorientering interface, exceptions, generik... använda olika algoritmer och datastrukturer för att effektivt lösa problem sökning, sortering... listor, binära sökträd, hashtabeller, heapar... dels genom att använda färdiga klassbibliotek och dels genom att göra egna implementeringar testa klasser (junit) analysera och jämföra algoritmers tidsåtgång formulera rekursiva algoritmer skriva program med grafiska användargränssnitt PFK (Introduktion) HT / 15

4 Mål Förklaring av termer Algoritm Beskrivning hur man stegvis löser ett problem. Ex: matrecept, linjärsökning Datastruktur En samling variabler som hör ihop på något sätt. Ex: vektor, länkad lista, träd Biliotek En samling färdiga klasser som är tänkta att användas i andra program. Fungerar som en utvidgning av programspråket. Ex: Javas standardbibliotek för samlingar - Java Collections Framework PFK (Introduktion) HT / 15

5 Varför är detta viktigt att kunna? Till skillnad mot övningsprogram är riktiga program stora, skrivs av flera personer, har lång livstid, kräver underhåll.... Därför är följande viktigt: bra design att man kan välja lämpliga algoritmer, datastrukturer och färdiga byggstenar (klasser ur bibliotek) bra verktyg för programutveckling, felsökning och testning PFK (Introduktion) HT / 15

6 Från problem till program Specifikation av problemet Design Val av lösningsmetoder (algoritmer, datastrukturer) för delproblem Implementering (programskrivning) Testning Underhåll (korrigeringar och uppdateringar) 2 Behandlas i EDA061/F10, OMD Behandlas i denna kurs Parallellt: dokumentation PFK (Introduktion) HT / 15

7 Exempel 1 Skriv program för att hantera kontakter (namn, mobil nr...). Att fundera på: Ska vi använda en vektor eller finns det andra, bättre sätt att lagra posterna? Finns det färdiga klasser som kan användas? Hur sker kommunikationen med användaren (utskrifter i konsolfönstret eller snyggare grafiskt användargränssnitt)? Hur designar man programmet så att man lätt kan byta sätt? Hur söker man snabbt om antal poster är stort är stor?... PFK (Introduktion) HT / 15

8 Exempel 2 Problem: Givet n tal, tag reda på de k största. Ex: Talen är 4, 1, 9, 5, 2, 6 och k = 3 ger svaret 5, 6, 9 Lösning: Lagra talen i en vektor och sortera dem med en enkel algoritm. Sedan är det enkelt att avläsa de k största: 1, 2, 4, 5, 6, 9 Fungerar detta om n och k är stort? Är algoritmen tillräckligt snabb? Finns det någon annan datastruktur än vektor som passar bättre? PFK (Introduktion) HT / 15

9 Kursens struktur f 1-2 f 3-4 f 5 f 6 f 7 f 8-10 f 11 f 12 ö1-3, ö 4-5 ö 6 ö 7 ö 8-11 ö 12 ö 13 lab1 lab 2 lab 3 lab 6 lab 4-6 Interface, exceptions, generik, JCF, iteratorer Listor, stackar köer, länkade strukturer Algoritmers effektivitet, tidskomplexitet Rekursion Grafiska användargränssnitt Set, map. Träd, binära sökträd, hashtabeller Prioritetsköer, heapar Sortering PFK (Introduktion) HT / 15

10 Kursmoment Laborationer 6 st lp 1 läsvecka 3, 5, 7 och lp 2 läsvecka 2, 4, 6, obligatoriska Kräver förberedelser. Ska lösas i grupper om två. Anmälan till önskad labbgrupp görs på kursens hemsida senast ons 2/9. Inlämningsuppgift andra halvan av kursen obligatorisk Ska lösas i grupper om två. Finns på hemsidan. Det finns två alternativ att välja mellan. Redovisas i läsvecka 7 i lp 2. Övningsuppgifter Viktigt komplement till laborationerna. Löses på egen hand. Uppgifter och lösningsförslag finns på kursens hemsida Föreläsningar 13 st, lp 1 läsvecka 1-7 och lp 2 läsvecka 1-4, 6-7 Bilder läggs ut på hemsidan och används delvis under föreläsningarna. Tillsammans med de bilder som inte visats blir de publicerade bilderna en sammanfattning av kursinnehållet som kan användas för repetition. PFK (Introduktion) HT / 15

11 Examination Skriftlig tentamen Kursen inrapporteras i Ladok i två delar Obligatoriska moment (laborationer + inlämningsuppgift) 3 hp Tentamen 4.5 hp PFK (Introduktion) HT / 15

12 Lärobok E. Koffman och A. T. Wolfgang: Data Structures: Abstraction and Design Using Java, Second Edition. Den gamla upplagan heter: Objects, Abstraction, Data Structures and Design Using Java Version 5.0. Det går bra att använda både den nya och den gamla upplagan Litteraturanvisningar i kursmaterialet ges för båda upplagorna. Ny upplaga är på gång (jan 2016). PFK (Introduktion) HT / 15

13 Relation till andra kurser För C och D ingår kursen i kurskedjor. Det är viktigt att känns till förkunskapskraven i kedjan. Finns på hemsidan. I övrigt gäller att nästan alla valfria kurser i datavetenskap kräver godkänt i EDAA01. PFK (Introduktion) HT / 15

14 CEQ-synpunkter Överlag nöjda studenter Några synpunkter från tidigare kursomgångar: Laborationerna har varit intressanta och har haft ett första intryck av att vara väldigt avancerade men sedan varit lättare än vad man kunnat tro. Laborationerna var för svåra för att klara av på endast ett tillfälle. Labbarna kräver förberedelser. Det var bra att jobba i par på uppgifterna så man har någon att diskutera med hela tiden. Jobbigt att behöva köa för att få hjälp med inlämningsuppgiften. Börja i god tid. Saknar övningstillfällena. Övningsuppgifterna finns kvar som självstudieuppgifter. Viktiga! Lös dem. PFK (Introduktion) HT / 15

15 Nytt sedan förra kursomgången: Senaste versionen av Java, Java 8, innehåller en del nyheter med anknytning till kursen. I kursboken och i det mesta av kursmaterialet används Java 7. Vissa föreläsningsbilder med Java 8 kommer dock att smygas in. JavaFX kommer att användas (istället för Swing-paketet) för att skriva grafiska användargränssnitt. Påverkar labb 3, 6 och inlämningsuppgiften. Det kommer (troligen) att finnas möjlighet att skriva inlämningsuppgiften för Android. Tentorna påverkas ej av detta. Extentorna är alltså fortfarande aktuella. PFK (Introduktion) HT / 15

Introduktionsmöte Innehåll

Introduktionsmöte Innehåll Introduktionsmöte Innehåll Introduktion till kursen Kursens mål och innehåll Undervisning Datavetenskap (LTH) Introduktionsmöte ST 2019 1 / 14 EDAA01 Programmeringsteknik - fördjupningskurs Ingen sommarkurs

Läs mer

Mål Förklaring av termer

Mål Förklaring av termer Föreläsning 1 Innehåll Detta kan du Förkunskaper Introduktion Kursens mål och innehåll Undervisning Abstrakta datatyper och delar av Javas klassbibliotek Arv, abstrakta klasser och metoder (repetition)

Läs mer

Mål Förklaring av termer

Mål Förklaring av termer Föreläsning 1 Innehåll Detta kan du Förkunskaper Introduktion Kursens mål och innehåll Undervisning Arv, abstrakta klasser och metoder (repetition) Abstrakta datatyper - lista, stack, FIFO-kö, mängd, map,

Läs mer

Föreläsning 1 Innehåll

Föreläsning 1 Innehåll Föreläsning 1 Innehåll Introduktion Kursens mål och innehåll Undervisning Arv, abstrakta klasser och metoder (repetition) Interface Abstrakta datatyper - lista, stack, FIFO-kö, mängd, map, prioritetskö

Läs mer

EDAA30 Programmering i Java - fortsättningskurs

EDAA30 Programmering i Java - fortsättningskurs Föreläsning 1 Föreläsning 1 Innehåll EDAA30 Programmering i Java - fortsättningskurs cs.lth.se/edaa30 Kursansvarig: Marcus Klang marcus.klang@cs.lth.se Introduktion Kursens mål och innehåll Undervisning

Läs mer

Föreläsning 1 Innehåll. EDAA01 Programmeringsteknik - fördjupningskurs. Detta ska du lära dig... Kursens mål. Detta kan du...

Föreläsning 1 Innehåll. EDAA01 Programmeringsteknik - fördjupningskurs. Detta ska du lära dig... Kursens mål. Detta kan du... Föreläsning 1 Innehåll EDAA01 Programmeringsteknik - fördjupningskurs Introduktion Kursens mål och innehåll Hur kursen går till, undervisningsmoment mm. Arv, abstrakta klasser och metoder (repetition)

Läs mer

Programmeringsteknik II

Programmeringsteknik II Programmeringteknik II Kursintroduktion http://www.it.uu.se/edu/course/homepage/prog2/vt18/ 2018-03-19 Programmeringsteknik II 2018-03-19 1 / 9 Lärare Carl Nettelblad (kursansvarig) Anna Eckerdal Biträdande

Läs mer

Föreläsning 14 Innehåll

Föreläsning 14 Innehåll Föreläsning 14 Innehåll Abstrakta datatyper, datastrukturer Att jämföra objekt övriga moment i kursen Om tentamen Skriftlig tentamen både programmeringsuppgifter och teoriuppgifter Hitta fel i fingerade

Läs mer

Hitta k största bland n element. Föreläsning 13 Innehåll. Histogramproblemet

Hitta k största bland n element. Föreläsning 13 Innehåll. Histogramproblemet Föreläsning 13 Innehåll Algoritm 1: Sortera Exempel på problem där materialet i kursen används Histogramproblemet Schemaläggning Abstrakta datatyper Datastrukturer Att jämföra objekt Om tentamen Skriftlig

Läs mer

Översikt. Programmering tillämpningar och datastrukturer. Vad kursen täcker. Lärare. Rekommenderad litteratur. Kursmål 729G58 (HKGBB7)

Översikt. Programmering tillämpningar och datastrukturer. Vad kursen täcker. Lärare. Rekommenderad litteratur. Kursmål 729G58 (HKGBB7) Översikt Programmering tillämpningar och datastrukturer 729G58 (HKGBB7) Kursinformation Objektorienterad programmering: Klasser och objekt Arv Polymorfism Metoder Programexempel Programmering tillämpningar

Läs mer

Föreläsning 17 UTBLICK: FORTSÄTTNINGSKURSER I DATAVETENSKAP + ANDROID

Föreläsning 17 UTBLICK: FORTSÄTTNINGSKURSER I DATAVETENSKAP + ANDROID Föreläsning 17 UTBLICK: FORTSÄTTNINGSKURSER I DATAVETENSKAP + ANDROID Vad gör vi här? Programmeringsteknik fördjupningskurs (EDAA01; 7,5hp) Valfri för F, N & BME (kan läsas från åk 2 eller i sommar!) Avancerad

Läs mer

Datastrukturer och algoritmer. Föreläsning 15 Inför tentamen

Datastrukturer och algoritmer. Föreläsning 15 Inför tentamen Datastrukturer och algoritmer Föreläsning 15 Inför tentamen 1 Innehåll Kursvärdering Vi behöver granskare! Repetition Genomgång av gammal tenta 2 Första föreläsningen: målsättningar Alla ska höja sig ett

Läs mer

Algoritmer och datastrukturer. HI1029 8,0 hp Introduktion

Algoritmer och datastrukturer. HI1029 8,0 hp Introduktion Algoritmer och datastrukturer HI1029 8,0 hp Introduktion Lärandemål Efter kursen ska studenten: Ha kunskaper om de vanligaste algoritmteknikerna och datastrukturerna I viss mån kunna utvärdera algoritmers

Läs mer

Föreläsning 15: Repetition DVGA02

Föreläsning 15: Repetition DVGA02 Föreläsning 15: Repetition DVGA02 Vad handlar kursen om? Kursen kan i grova drag delas upp i tre delar: 1. Objekt-orienterad programmering 2. Grafiska användargränssnitt 3. Datastrukturer Dessutom genomsyras

Läs mer

Kursanalys DD1312 hösten 2008

Kursanalys DD1312 hösten 2008 Kursanalys DD1312 hösten 2008 Författare: Vahid Mosavat Nedan följer en kursanalys av kursen programmeringsteknik och matlab för I1. Kursanalysen är framtaget av kursledarens anteckningar under kursens

Läs mer

Programutveckling med Java 7.5 p, ht 2007 (D0019N) STUDIEHANDLEDNING - ALLMÄN INFORMATION

Programutveckling med Java 7.5 p, ht 2007 (D0019N) STUDIEHANDLEDNING - ALLMÄN INFORMATION Programutveckling med Java 7.5 p, ht 2007 (D0019N) STUDIEHANDLEDNING - ALLMÄN INFORMATION Hej, jag heter Ingela Johansson och hälsar dig välkommen till kursen Programutveckling med Java. Den är på 7.5

Läs mer

Föreläsning 13 Innehåll

Föreläsning 13 Innehåll Föreläsning 13 Innehåll Exempel på problem där materialet i kursen används Hitta k största bland n element Histogramproblemet Schemaläggning PFK (Föreläsning 13) VT 2013 1 / 15 Hitta k största bland n

Läs mer

Programmering för språkteknologer II, HT2011. Rum

Programmering för språkteknologer II, HT2011. Rum Programmering för språkteknologer II, HT2011 evelina.andersson@lingfil.uu.se Rum 9-2035 http://stp.ling.uu.se/~evelina/uv/uv11/pst2/ Kursplan Mål Efter avslutad kurs skall studenten för att förtjäna betyget

Läs mer

Design och konstruktion av grafiska gränssnitt

Design och konstruktion av grafiska gränssnitt Design och konstruktion av grafiska gränssnitt Armin Nezirevic Peter Börjesson Interaktionsdesign Tillämpad informationsteknologi Chalmers/GU Idag Vad utmärker ett bra användargränssnitt? Kort kursinfo

Läs mer

Programmering, grundkurs

Programmering, grundkurs DNR LIU-2018-02499 1(5) Programmering, grundkurs Programkurs 8 hp Introduction to Computer Programming TDDE44 Gäller från: 2019 VT Fastställd av Programnämnden för elektroteknik, fysik och matematik, EF

Läs mer

Innehåll. Mina målsättningar. Vad krävs för att nå dit? Obligatoriska uppgifter. Websajten. Datastrukturer och algoritmer

Innehåll. Mina målsättningar. Vad krävs för att nå dit? Obligatoriska uppgifter. Websajten. Datastrukturer och algoritmer Innehåll Datastrukturer och algoritmer Föreläsning 1! Introduktion och begrepp Kurspresentation! - Målsättning! - Kursutvärdering! - Upplägg! - Översikt! Viktiga begrepp "1 "2 Mina målsättningar Alla ska

Läs mer

Poäng. Start v. DV1: Datavetenskapens byggstenar 7.5. Antal registrerade (män/kvinnor) 38 (38/0)

Poäng. Start v. DV1: Datavetenskapens byggstenar 7.5. Antal registrerade (män/kvinnor) 38 (38/0) TEK/NAT Kursrapport Kurs Kurskod Poäng År Start v. DV1: Datavetenskapens byggstenar 5DV160 7.5 2014 44 Institution Institutionen för datavetenskap Antal registrerade (män/kvinnor) 38 (38/0) Antal aktiva

Läs mer

Kursplanering Objektorienterad programmering

Kursplanering Objektorienterad programmering Kursplanering Objektorienterad programmering Fakta Ämne Programmering Poäng 40 Yh-poäng Kurskod YSYS-OOP Klass Systemutvecklare.NET 2 Syfte och koppling till yrkesrollen Syftet är att få en stabil grund

Läs mer

Introduktion till Datalogi DD1339. Föreläsning 1 8 sept 2014

Introduktion till Datalogi DD1339. Föreläsning 1 8 sept 2014 Introduktion till Datalogi DD1339 Föreläsning 1 8 sept 2014 Kontaktuppgifter & Info: Kurskod: DD1339, 19hp Kursomgång: inda14 Kursansvarig: Christian Smith, ccs@kth.se Michael Minock, minock@kth.se Dilian

Läs mer

Föreläsning 9 Innehåll

Föreläsning 9 Innehåll Föreläsning 9 Innehåll Binära sökträd algoritmer för sökning, insättning och borttagning, implementering effektivitet balanserade binära sökträd, AVL-träd Abstrakta datatyperna mängd (eng. Set) och lexikon

Läs mer

Kursanalys DA2003 sommar 2017

Kursanalys DA2003 sommar 2017 Kursanalys DA2003 sommar 2017 Kursdata Programmeringsteknik, DA2003, 6 högskolepoäng Kursledare: Emma Riese Examinator: Olle Bälter Kursen är en webbkurs som inte kräver någon fysisk närvaro, den avslutande

Läs mer

Lägg uppgifterna i ordning. Skriv uppgiftsnummer och din anmälningskod överst i högra hörnet på alla papper.

Lägg uppgifterna i ordning. Skriv uppgiftsnummer och din anmälningskod överst i högra hörnet på alla papper. Tentamen Programmeringsteknik II 2018-05-28 Skrivtid: 0800 1300 Tänk på följande Lägg uppgifterna i ordning. Skriv uppgiftsnummer och din anmälningskod överst i högra hörnet på alla papper. Fyll i försättssidan

Läs mer

ADT Prioritetskö. Föreläsning 12 Innehåll. Prioritetskö. Interface för Prioritetskö. Prioritetsköer och heapar

ADT Prioritetskö. Föreläsning 12 Innehåll. Prioritetskö. Interface för Prioritetskö. Prioritetsköer och heapar Föreläsning 1 Innehåll Prioritetsköer och heapar Prioritetsköer och heapar ADT prioritetskö Klassen PriorityQueue i java.util Heapar Implementering av prioritetskö med heap Sortering med hjälp av heap

Läs mer

Datastrukturer i kursen. Föreläsning 8 Innehåll. Träd rekursiv definition. Träd

Datastrukturer i kursen. Föreläsning 8 Innehåll. Träd rekursiv definition. Träd Föreläsning 8 Innehåll Datastrukturer i kursen Träd, speciellt binära träd egenskaper användningsområden implementering Undervisningsmoment: föreläsning 8, övningsuppgifter 8, lab 4 Avsnitt i läroboken:

Läs mer

Grundläggande Datalogi

Grundläggande Datalogi s delar Grundläggande Datalogi s delar s delar s delar Dataabstraktion Rekursion Algoritmanalys s delar Sortering Trädstrukturer Grafalgoritmer Optimering Stavning Strängmatchning Datakompression Versionshantering

Läs mer

TDDC30 Programmering i Java, Datastrukturer och Algoritmer Lektion 3

TDDC30 Programmering i Java, Datastrukturer och Algoritmer Lektion 3 TDDC30 Programmering i Java, Datastrukturer och Algoritmer Lektion 3 Laboration 3 Visualisering (och implementering) av sortering Exempel på grafik (med Swing-paketet) Frågor 1 Laboration 3 Visualisering

Läs mer

Föreläsning 1 & 2 INTRODUKTION

Föreläsning 1 & 2 INTRODUKTION Föreläsning 1 & 2 INTRODUKTION Denna föreläsning Vad händer under kursen? praktisk information Kursens mål vad är programmering? Skriva små program i programspråket Java Skriva program som använder färdiga

Läs mer

Kursinformation Grundkurs i programmering med Python

Kursinformation Grundkurs i programmering med Python Hösten 2009 Två kurser i en 5DV105 - Programmeringsteknik med Python och MATLAB Programmeringsteori Föreläsningar om Python Färdighetsövning Laborationer i Python 5DV106 - Programmering i Python Praktisk

Läs mer

Kurs-PM fo r HI1027, Objektorienterad programmering, period 1 HT14

Kurs-PM fo r HI1027, Objektorienterad programmering, period 1 HT14 Kurs-PM fo r HI1027, Objektorienterad programmering, period 1 HT14 Aktuell kursplan finns på studentwebben, http://www.kth.se/student/kurser/kurs/hi1027. Lärare och examinator Anders Lindström, anders.lindstrom@sth.kth.se,

Läs mer

Objektorienterad programmering

Objektorienterad programmering DNR LIU-2016-01391 1(8) Objektorienterad programmering Programkurs 6 hp Object-Oriented Programming TND002 Gäller från: Fastställd av Programnämnden för data- och medieteknik, DM Fastställandedatum 2017-01-25

Läs mer

Kurs-PM fo r HI1027, Objektorienterad programmering, period 1 HT15

Kurs-PM fo r HI1027, Objektorienterad programmering, period 1 HT15 Kurs-PM fo r HI1027, Objektorienterad programmering, period 1 HT15 Aktuell kursplan finns på studentwebben, http://www.kth.se/student/kurser/kurs/hi1027. Lärare och examinator Anders Lindström, anders.lindstrom@sth.kth.se,

Läs mer

Design och konstruktion av grafiska gränssnitt

Design och konstruktion av grafiska gränssnitt Design och konstruktion av grafiska gränssnitt Peter Börjesson Interaktionsdesign Tillämpad informationsteknologi Chalmers/GU Idag Kort kursinfo Lab info Föreläsning - Vad utmärker ett bra användargränssnitt?

Läs mer

Objekt-orienterad Programmering och Design. TDA551 Alex Gerdes, HT-2016

Objekt-orienterad Programmering och Design. TDA551 Alex Gerdes, HT-2016 Objekt-orienterad Programmering och Design TDA551 Alex Gerdes, HT-2016 Kursteamet Dr. Alex Gerdes kursansvarig, föreläsare Dr. Niklas Broberg examinator, (föreläsare) Fredrik Sjöholm handledare Johan Andersson

Läs mer

Objektorienterad Systemutveckling Period 3

Objektorienterad Systemutveckling Period 3 Objektorienterad Systemutveckling 2 2018 Period 3 kurskod C1OB2B Innehåll Kursintroduktion Kursmaterialet finns temporärt även på http://www.gidenstam.org/hb/oosu2 KURSINTRODUKTION Kursintroduktion Inblandade

Läs mer

Objektorienterad Programkonstruktion

Objektorienterad Programkonstruktion Objektorienterad Programkonstruktion Föreläsning 9 Projektuppgift Collection, Iterator, Composite Christian Smith ccs@kth.se 1 Projektuppgift IM, skickar meddelanden mellan datorer En lite större labbuppgift,

Läs mer

Kursanalys. Douglas Wikström 15 juni Problemlösning och programmering under press (DD2458) Högskolepoäng (hp): 9 Kursen gavs: Period 1-2, 2008

Kursanalys. Douglas Wikström 15 juni Problemlösning och programmering under press (DD2458) Högskolepoäng (hp): 9 Kursen gavs: Period 1-2, 2008 Kursanalys Douglas Wikström 15 juni 2009 1 Kursdata Beteckning: Problemlösning och programmering under press (DD2458) Högskolepoäng (hp): 9 Kursen gavs: Period 1-2, 2008 Kursledare: Douglas Wikström Kursassistent:

Läs mer

Objekt-orienterad Programmering och Design. TDA552 Alex Gerdes, HT-2018

Objekt-orienterad Programmering och Design. TDA552 Alex Gerdes, HT-2018 Objekt-orienterad Programmering och Design TDA552 Alex Gerdes, HT-2018 Kursteamet Dr. Alex Gerdes examinator och föreläsare (Dr. Niklas Broberg föreläsare) Handledare: Sólrún Halla Einarsdóttir Yazan Ghafir

Läs mer

Föreläsning 10 Innehåll. Prioritetsköer och heapar. ADT Prioritetskö. Interface för Prioritetskö. Exempel på vad du ska kunna

Föreläsning 10 Innehåll. Prioritetsköer och heapar. ADT Prioritetskö. Interface för Prioritetskö. Exempel på vad du ska kunna Föreläsning Innehåll Prioritetsköer och heapar Prioritetsköer och heapar ADT prioritetskö Klassen PriorityQueue i java.util Implementering med lista ar Implementering av prioritetskö med heap Sortering

Läs mer

Föreläsning 1: Introduktion till kursen

Föreläsning 1: Introduktion till kursen (18 januari 2015 F1.1 ) Föreläsning 1: Introduktion till kursen Lärare: Anna, Carl, Johan, Tom och ca 20 assistenter Registrering / avregistrering Undervisningsformer: föreläsningar och laborationer Kursmaterial

Läs mer

CEQ-kommentarer Kurser år 2. CEQ-kommentarer Kurser år 2

CEQ-kommentarer Kurser år 2. CEQ-kommentarer Kurser år 2 CEQ-kommentarer Kurser år 2 Innehåll LP1... 2 Introduktion till mikroekonomisk teori, EXTA40... 2 Logistik, MTTF01... 2 LP2... 3 Matematisk statistik, allmän kurs, FMS012... 3 LP3... 3 Programmeringsteknik,

Läs mer

Lägg uppgifterna i ordning. Skriv uppgiftsnummer och din anmälningskod överst i högra hörnet på alla papper.

Lägg uppgifterna i ordning. Skriv uppgiftsnummer och din anmälningskod överst i högra hörnet på alla papper. Tentamen Programmeringsteknik II 2017-08-24 Skrivtid: 0800 1300 Tänk på följande Lägg uppgifterna i ordning. Skriv uppgiftsnummer och din anmälningskod överst i högra hörnet på alla papper. Fyll i försättssidan

Läs mer

Objektorienterad programmering, analys och design med Java, 5p 2D4135, vt 2006. Kursprogram

Objektorienterad programmering, analys och design med Java, 5p 2D4135, vt 2006. Kursprogram Objektorienterad programmering, analys och design med Java, 5p 2D4135, vt 2006 Kursprogram Kursens mål är att ge dig kunskaper om begreppen och principerna inom objektorienterad programmering kunskaper

Läs mer

Inlämningsuppgiften. Föreläsning 9 Innehåll. Träd. Datastrukturer i kursen

Inlämningsuppgiften. Föreläsning 9 Innehåll. Träd. Datastrukturer i kursen Föreläsning 9 Innehåll Inlämningsuppgiften De föreläsningar som inlämningsuppgiften bygger på är nu klara. Det är alltså dags att börja arbeta med inlämningsuppgiften. Träd, speciellt binära träd egenskaper

Läs mer

Objektorienterad programmering, analys och design med Java, 5p 2D4135, vt 2005. Kursprogram

Objektorienterad programmering, analys och design med Java, 5p 2D4135, vt 2005. Kursprogram Objektorienterad programmering, analys och design med Java, 5p 2D4135, vt 2005 Kursprogram Kursens mål är att ge dig kunskaper om begreppen och principerna inom objektorienterad programmering och design

Läs mer

Föreläsning REPETITION & EXTENTA

Föreläsning REPETITION & EXTENTA Föreläsning 18 19 REPETITION & EXTENTA Programmeringsteknik på 45 minuter Klasser och objekt Variabler: attribut, lokala variabler, parametrar Datastrukturer Algoritmer Dessa bilder är inte repetitionsbilder

Läs mer

Föreläsning 11 Innehåll. Sortering. Sortering i Java. Sortering i Java Comparable. Sortering. O(n 2 )-algoritmer: urvalssortering insättningssortering

Föreläsning 11 Innehåll. Sortering. Sortering i Java. Sortering i Java Comparable. Sortering. O(n 2 )-algoritmer: urvalssortering insättningssortering Föreläsning 11 Innehåll Sortering O(n 2 )-algoritmer: urvalsering insättningsering O(n log n)-algoritmer: Merge Quick Heap behandlades i samband med prioritetsköer. Undervisningsmoment: föreläsning 11,

Läs mer

Vad handlar kursen om? Algoritmer och datastrukturer. Vad handlar kursen om? Vad handlar kursen om?

Vad handlar kursen om? Algoritmer och datastrukturer. Vad handlar kursen om? Vad handlar kursen om? Algoritmer och datastrukturer Allmänt om kursen Kort javagrund repetition - Klasser, metoder, objekt och referensvariabler, - Hierarkiska klass strukturer - Arrayer och arrayer av objekt - Collection ramverket

Läs mer

Objektorienterad programmering Föreläsning 8. Copyright Mahmud Al Hakim Agenda (halvdag)

Objektorienterad programmering Föreläsning 8. Copyright Mahmud Al Hakim  Agenda (halvdag) Objektorienterad programmering Föreläsning 8 Copyright Mahmud Al Hakim mahmud@webacademy.se www.webacademy.se Agenda (halvdag) Objektorienterad programutveckling Algoritmer Algoritmkonstruktionerna Relationer

Läs mer

Föreläsning 1 & 2 INTRODUKTION

Föreläsning 1 & 2 INTRODUKTION Föreläsning 1 & 2 INTRODUKTION Denna föreläsning Vad händer under kursen? praktisk information Kursens mål vad är programmering? Skriva små program i programspråket Java Skriva program som använder färdiga

Läs mer

Objektorienterad programmering

Objektorienterad programmering 1(5) Objektorienterad programmering och Java Programkurs 7 hp Object Oriented Programming and Java TDDE30 Gäller från: 2018 VT Fastställd av Programnämnden för data- och medieteknik, DM Fastställandedatum

Läs mer

Abstrakt datatyp. -Algoritmer och Datastrukturer- För utveckling av verksamhet, produkter och livskvalitet.

Abstrakt datatyp. -Algoritmer och Datastrukturer- För utveckling av verksamhet, produkter och livskvalitet. -Algoritmer och Datastrukturer- Abstrakt datatyp Datatyp för en variabel Betecknar i ett programmeringsspråk den mängd värden variabeln får anta. T ex kan en variabel av typ boolean anta värdena true och

Läs mer

Datastrukturer och algoritmer

Datastrukturer och algoritmer Innehåll Datastrukturer och algoritmer Föreläsning 14 Objektorientering Abstrakta datatyper Generella teorier 469 470 Java och C++ Programmeringsspråken C++ och java bygger båda på C. Förutom de grundläggande

Läs mer

Thomas Padron-Mccarthy. Databasteknik, 7.5 hp (DT105G ) Antal svarande = 13. Svarsfrekvens i procent = 21. Undersökningsresultat

Thomas Padron-Mccarthy. Databasteknik, 7.5 hp (DT105G ) Antal svarande = 13. Svarsfrekvens i procent = 21. Undersökningsresultat Thomas Padron-Mccarthy Databasteknik, 7. hp (DT0G-70-06) Antal svarande = Svarsfrekvens i procent = Undersökningsresultat Teckenförklaring Relativa frekvenser av svar Std. Av. Median Frågetext Vänstra

Läs mer

Föreläsning 8 Innehåll

Föreläsning 8 Innehåll Föreläsning 8 Innehåll Orientering om samarbete om Eclipse-projekt med git Orientering om konstruktion av användargränssnitt i Android Mer om rekursion söndra-och-härska-algoritmer dynamisk programmering

Läs mer

Föreläsning 13 Datastrukturer (DAT037)

Föreläsning 13 Datastrukturer (DAT037) Föreläsning 13 Datastrukturer (DAT037) Fredrik Lindblad 1 11 december 2017 1 Slides skapade av Nils Anders Danielsson har använts som utgångspunkt. Se http://www.cse.chalmers.se/edu/year/2015/course/dat037

Läs mer

Kungl. Tekn. Högskolan Förel 1, bild 1 Föreläsning 1: Introduktion ffl Kursinnehåll ffl Javarepetition ffl Referenser ffl Nyckelordet static ffl Klass

Kungl. Tekn. Högskolan Förel 1, bild 1 Föreläsning 1: Introduktion ffl Kursinnehåll ffl Javarepetition ffl Referenser ffl Nyckelordet static ffl Klass Kungl. Tekn. Högskolan Förel 1, bild 1 Föreläsning 1: Introduktion ffl Kursinnehåll ffl Javarepetition ffl Referenser ffl Nyckelordet static ffl Klassen Mio ffl Särfall ffl Interface Kungl. Tekn. Högskolan

Läs mer

Objektorienterad programmering, analys och design med Java, 5p 2D4135, vt 2004. Kursprogram

Objektorienterad programmering, analys och design med Java, 5p 2D4135, vt 2004. Kursprogram Objektorienterad programmering, analys och design med Java, 5p 2D4135, vt 2004 Kursprogram Kursens mål är att ge dig kunskaper om begreppen och principerna inom objektorienterad programmering och design

Läs mer

Föreläsning 11 Innehåll

Föreläsning 11 Innehåll Föreläsning 11 Innehåll Sortering O(n 2 )-algoritmer: urvalssortering insättningssortering O(n log n)-algoritmer: Mergesort Quicksort Heapsort behandlades i samband med prioritetsköer. Undervisningsmoment:

Läs mer

Poäng. Start v. Programmeringsteknik med C och Matlab 7,50. Antal registrerade (män/kvinnor) 274 (194/80)

Poäng. Start v. Programmeringsteknik med C och Matlab 7,50. Antal registrerade (män/kvinnor) 274 (194/80) TEK/NAT Kursrapport Kurs Kurskod Poäng År Start v. Programmeringsteknik med C och Matlab 5DV157 7,5 218 4 Institution Institutionen för datavetenskap Antal registrerade (män/kvinnor) 274 (194/8) Antal

Läs mer

Programmeringsteknik F1/TM1

Programmeringsteknik F1/TM1 f1pt Välkommen till Programmeringsteknik F1/TM1 CTH: TIN212 LP 2-3 2016/17 F1 introduktion Erland Holmström erland... at... chalmers.se Data & Informationsteknik Kurshemsida: www.cse.chalmers.se/edu/course/tin212/

Läs mer

Programmering och datastrukturer

Programmering och datastrukturer DNR LIU-2018-02499 1(9) Programmering och datastrukturer Programkurs 8 hp Programming and Data Structures TDDC76 Gäller från: 2019 VT Fastställd av Programnämnden för elektroteknik, fysik och matematik,

Läs mer

Kurs-PM HI2011, Programutveckling i funktionella och objektorienterande spra k, P3 VT17

Kurs-PM HI2011, Programutveckling i funktionella och objektorienterande spra k, P3 VT17 Kurs-PM HI2011, Programutveckling i funktionella och objektorienterande spra k, P3 VT17 Bakgrund och kursmål Kursens mål är att ge kunskaper inom funktionell programmering, fördjupade kunskaper inom objektorienterad

Läs mer

Kursanalys DA2003 höst 2017

Kursanalys DA2003 höst 2017 Kursanalys DA2003 höst 2017 Kursdata Programmeringsteknik, DA2003, 6 högskolepoäng Kursledare: Emma Riese Examinator: Olle Bälter Kursen är en webbkurs som inte kräver någon fysisk närvaro, den avslutande

Läs mer

PROGRAMMERING. Ämnets syfte. Kurser i ämnet

PROGRAMMERING. Ämnets syfte. Kurser i ämnet PROGRAMMERING Ämnet programmering behandlar programmeringens roll i informationstekniska sammanhang som datorsimulering, animerad grafik, praktisk datoriserad problemlösning och användaranpassad konfiguration

Läs mer

Sökning och sortering

Sökning och sortering Sökning och sortering Programmering för språkteknologer 2 Sara Stymne 2013-09-16 Idag Sökning Analys av algoritmer komplexitet Sortering Vad är sökning? Sökning innebär att hitta ett värde i en samling

Läs mer

32IIÅ1 HT17 Masterprogram i Biblioteks- och informationsvetenskap, distansutbildning (BMBD116h) Johan Eklund Johan Eklund

32IIÅ1 HT17 Masterprogram i Biblioteks- och informationsvetenskap, distansutbildning (BMBD116h) Johan Eklund Johan Eklund Kursrapport Informationsåtkomst (7,5 hp) Kurskod: Kursomgång: Program: Kursansvarig: Examinator: 32IIÅ1 HT17 Masterprogram i Biblioteks- och informationsvetenskap, distansutbildning (BMBD116h) Johan Eklund

Läs mer

Ökad valbarhet för Systemvetenskapliga programmet. Möjlighet till inriktning

Ökad valbarhet för Systemvetenskapliga programmet. Möjlighet till inriktning Ökad valbarhet för Systemvetenskapliga programmet Möjlighet till inriktning Nuläget obligatoriska teknikkurser Studenterna läser följande obligatoriska IT-kurser År 1 7,5 hp programmering i TIG015 7,5

Läs mer

Datateknik GR (A), Introduktion till programmering i C++, 7,5 hp

Datateknik GR (A), Introduktion till programmering i C++, 7,5 hp 1 (5) Kursplan för: Datateknik GR (A), Introduktion till programmering i C++, 7,5 hp Computer Engineering BA (A), Introduction to Programming in C++, 7.5 Credits Allmänna data om kursen Kurskod Ämne/huvudområde

Läs mer

Föreläsning 1-2 innehåll

Föreläsning 1-2 innehåll Föreläsning 1-2 innehåll Om kursen Kursens mål och innehåll Praktisk information om kursen Programmering program, algoritmer variabler, datatyper och tilldelningssatser läsa in värden från tangentbordet,

Läs mer

Objekt-orienterad programmering och design. DIT953 Niklas Broberg, 2018

Objekt-orienterad programmering och design. DIT953 Niklas Broberg, 2018 Objekt-orienterad programmering och design DIT953 Niklas Broberg, 2018 Kursteamet Niklas Broberg kursansvarig, föreläsare, examinator Johannes Åman Pohjola föreläsare Assistenter: Karin Wibergh Sarosh

Läs mer

PROGRAMMERING. Ämnets syfte. Kurser i ämnet

PROGRAMMERING. Ämnets syfte. Kurser i ämnet PROGRAMMERING Ämnet programmering behandlar hur mjukvaror skapas, anpassas och utvecklas samt programmeringens roll i informationstekniska sammanhang som datorsimulering och praktisk datoriserad problemlösning.

Läs mer

Datavetenskapligt program, 180 högskolepoäng

Datavetenskapligt program, 180 högskolepoäng GÖTEBORGS UNIVERSITET UTBILDNINGSPLAN IT-fakultetsstyrelsen 2013-02-14 Datavetenskapligt program, 180 högskolepoäng (Computer Science, Bachelor s Programme, 180 credits) Grundnivå/First level 1. Fastställande

Läs mer

EDAA20 Programmering och databaser. Mål komprimerat se kursplanen för detaljer. Checklista. Föreläsning 1-2 Innehåll. Programmering.

EDAA20 Programmering och databaser. Mål komprimerat se kursplanen för detaljer. Checklista. Föreläsning 1-2 Innehåll. Programmering. EDAA20 Programmering och databaser Mål komprimerat se kursplanen för detaljer Läsperiod 1 7.5 hp anna.aelsson@cs.lth.se http://cs.lth.se/edaa20 Mer information finns på kursens webbsida samt på det utdelade

Läs mer

Teoretisk del. Facit Tentamen TDDC (6)

Teoretisk del. Facit Tentamen TDDC (6) Facit Tentamen TDDC30 2013-06-05 1 (6) Teoretisk del 1. (3p) "Snabba frågor" Alla svar motiveras väl. a) Vad skiljer en statisk metod från en icke-statisk? (0.5p) Svar:En statisk metod är associerad till

Läs mer

Föreläsning 9 Innehåll

Föreläsning 9 Innehåll Föreläsning 9 Innehåll Träd, speciellt binära träd egenskaper användningsområden implementering Datavetenskap (LTH) Föreläsning 9 HT 2017 1 / 31 Inlämningsuppgiften De föreläsningar som inlämningsuppgiften

Läs mer

1DV432 ST14. I vilken utsträckning har kursens innehåll och uppläggning gett förutsättningar för att du ska ha uppnått respektive lärandemål?

1DV432 ST14. I vilken utsträckning har kursens innehåll och uppläggning gett förutsättningar för att du ska ha uppnått respektive lärandemål? 1DV432 ST14 : I vilken utsträckning har kursens innehåll och uppläggning gett förutsättningar för att du ska ha uppnått respektive lärandemål? Förstå grundläggande begrepp och principer inom objektorienterad

Läs mer

Länkade strukturer, parametriserade typer och undantag

Länkade strukturer, parametriserade typer och undantag Länkade strukturer, parametriserade typer och undantag Programmering för språkteknologer 2 Sara Stymne 2013-09-18 Idag Parametriserade typer Listor och länkade strukturer Komplexitet i länkade strukturer

Läs mer

FK Numeriska metoder

FK Numeriska metoder FK06 - Numeriska metoder Antal respondenter: 6 Antal : 18 Svarsfrekvens: 9,1 % 5. Helhetsintrycket Överlag är jag nöjd med den här kursen Antal 1 Inte alls 10 (58,8%) 5 (9,%) (11,8%) 0 (0,0%) Vet ej 0

Läs mer

TNSL05, Optimering, Modellering och Planering 6 hp, HT2-2010

TNSL05, Optimering, Modellering och Planering 6 hp, HT2-2010 ITN/KTS Stefan Engevall/Joakim Ekström Kursinformation TNSL05, Optimering, Modellering och Planering, HT2010 TNSL05, Optimering, Modellering och Planering 6 hp, HT2-2010 1 Kursmål & innehåll 1.1 Mål med

Läs mer

Översikt. Programmering tillämpningar och datastrukturer. Vad kursen täcker. Lärare. Rekommenderad litteratur. Kursmål 729G58 (HKGBB7)

Översikt. Programmering tillämpningar och datastrukturer. Vad kursen täcker. Lärare. Rekommenderad litteratur. Kursmål 729G58 (HKGBB7) Översikt Programmering tillämpningar och datastrukturer 729G58 (HKGBB7) rmation Objektorienterad programmering: och objekt Polymorfism Programexempel Programmering tillämpningar och datastrukturer 2 Vad

Läs mer

Kursprogram VT Konstruktionsteknik VBKF15 (9hp)

Kursprogram VT Konstruktionsteknik VBKF15 (9hp) Bygg och Miljöteknologi Avdelningen för Konstruktionsteknik Kursprogram VT 2018 Konstruktionsteknik VBKF15 (9hp) Avdelningen för Konstruktionsteknik ingår i institutionen för Bygg- och Miljöteknologi vid

Läs mer

Föreläsning Datastrukturer (DAT037)

Föreläsning Datastrukturer (DAT037) Föreläsning Datastrukturer (DAT037) Nils Anders Danielsson 2015-11-20 Idag Grafer: Terminologi. Datastrukturer. Topologisk sortering. Kortaste vägen. Bredden först-sökning. Dijkstras algoritm. (Vi får

Läs mer

SKOLFS. beslutade den XXX 2017.

SKOLFS. beslutade den XXX 2017. 1 (11) Föreskrifter om ändring i Skolverkets föreskrifter (SKOLFS 2010:247) om ämnesplan för ämnet programmering i gymnasieskolan, inom kommunal vuxenutbildning på gymnasial nivå och inom vidareutbildning

Läs mer

Introduktion till kursen och MATLAB

Introduktion till kursen och MATLAB Introduktion till kursen och MATLAB TNA005: Tillämpad matematik i teknik och naturvetenskap för ED1, KTS1, och MT1 vårterminen 2018 Berkant Savas Kommunikations- och transportsystem Institutionen för teknik

Läs mer

MATLAB-modulen Programmering i MATLAB. Höstterminen 2015 3hp. Vad är MATLAB

MATLAB-modulen Programmering i MATLAB. Höstterminen 2015 3hp. Vad är MATLAB MATLAB-modulen Programmering i MATLAB Höstterminen 2015 3hp Vad är MATLAB MatrixLaboratory Avancerad miniräknare. Maskinoberoende programmeringsspråk högnivåspråk (Python, Javascript) - interaktivt Behöver

Läs mer

TDDC30 Programmering i Java, Datastrukturer och Algoritmer Lektion 3

TDDC30 Programmering i Java, Datastrukturer och Algoritmer Lektion 3 TDDC30 Programmering i Java, Datastrukturer och Algoritmer Lektion 3 Laboration 3 Visualisering (och implementering) av sortering Exempel på grafik (med Swing-paketet) Frågor 1 Laboration 3 Visualisering

Läs mer

Sätt att skriva ut binärträd

Sätt att skriva ut binärträd Tilpro Övning 3 På programmet idag: Genomgång av Hemtalet samt rättning Begreppet Stabil sortering Hur man kodar olika sorteringsvilkor Inkapsling av data Länkade listor Användning av stackar och köer

Läs mer

729G75: Programmering och algoritmiskt tänkande. Tema 1, föreläsning 1 Jody Foo

729G75: Programmering och algoritmiskt tänkande. Tema 1, föreläsning 1 Jody Foo 729G75: Programmering och algoritmiskt tänkande Tema 1, föreläsning 1 Jody Foo Föreläsningsöversikt Kursinfo / Om kursen Algoritmer Objektorienterad programmering i praktiken terminologi använda objekt

Läs mer

Objektorienterad Programmering DAT043. Föreläsning 9 12/2-18 Moa Johansson (delvis baserat på Fredrik Lindblads material)

Objektorienterad Programmering DAT043. Föreläsning 9 12/2-18 Moa Johansson (delvis baserat på Fredrik Lindblads material) Objektorienterad Programmering DAT043 Föreläsning 9 12/2-18 Moa Johansson (delvis baserat på Fredrik Lindblads material) 1 Metoden clone() Skapa kopior av existerande objekt. Interface Cloneable Deep vs.

Läs mer

Välkomna till DIT012 IPGO

Välkomna till DIT012 IPGO Välkomna till DIT012 IPGO 1 Lärare och Handledare Kursansvariga, examinatorer, föreläsare och handledare Joachim von Hacht, hajo@chalmers.se, 772 1003 Handledare (se även kurssida) Alexander Sjösten, sjosten@chalmers.se

Läs mer

Interfacen Set och Map, hashtabeller

Interfacen Set och Map, hashtabeller Föreläsning 0 Innehåll Hashtabeller implementering, effektivitet Interfacen Set och Map ijava Interfacet Comparator Undervisningsmoment: föreläsning 0, övningsuppgifter 0-, lab 5 och 6 Avsnitt i läroboken:

Läs mer

Föreläsning 1: Introduktion till kursen

Föreläsning 1: Introduktion till kursen (17 januari 2017 F1 1 ) Föreläsning 1: Introduktion till kursen Lärare: Anna Eckerdal och Tom Smedsaas samt ca 20 assistenter Registrering / avregistrering Undervisningsformer: föreläsningar och laborationer

Läs mer

Föreläsning 1: Introduktion till kursen

Föreläsning 1: Introduktion till kursen (16 januari 2016 F1.1 ) Föreläsning 1: Introduktion till kursen Lärare: Anna Eckerdal och Tom Smedsaas samt ca 20 assistenter Registrering / avregistrering Undervisningsformer: föreläsningar och laborationer

Läs mer

Objekt, klasser. Tillstånd Signatur Kommunikation Typ. Fält, parametrar och lokala variabler. Konstruktorer Metoder DAVA15

Objekt, klasser. Tillstånd Signatur Kommunikation Typ. Fält, parametrar och lokala variabler. Konstruktorer Metoder DAVA15 DAVA15 Objekt, klasser Vad är det? Vad är sambandet mellan dem? Vad är skillnaden mellan dem? Tillstånd Signatur Kommunikation Typ Fält, parametrar och lokala variabler Likheter och skillnader Räckvidd

Läs mer