Iteratorer och generiska algoritmer sid. 1 6/28/2015 CD5250 OOP med C++ Mats Medin MDH/IDT Iterator vector ::iterator b = ivec.begin() vector ivec vector.

Slides:



Advertisements
Liknande presentationer
Algoritmer och data strukturer -Länkade listor
Advertisements

Föreläsning 10 Länkade lista Stack och Kö Att arbeta med listor
Sid period2CD5250 OOP med C++ Mats Medin MDH/IDT C++ - förbättrat C?  Procedurellt program ser ut som C: sekvens, selektion, iteration  /* kommentar.
Sid 1 CD5250 OOP med C++ Daniel Flemström MDH/IDT CD5250 OOP med C++
Föreläsning 4 Kö Implementerad med array Implementerad med länkad lista Djup kontra bredd Bredden först mha kö.
Vektorer (klassen Vector) Sortering
Sid period2CD5250 OOP med C++ Mats Medin MDH/IDT Generiska algoritmer Kan användas på containertyper och arrays Använder iteratorer Implementerar.
Rör vi oss? Det beror på vad vi jämför oss med.
För utveckling av verksamhet, produkter och livskvalitet. Stack och Kö - Implementering - Tilllämpningar.
Sid period2CD5250 OOP med C++ Daniel Flemström MDH/IDT Abstrakta Containertyper Vilka finns fördefinierade? Vad kan dom? #pragma warning(disable:4786)
1 ITK:P2 F6 Sortering av generiska containerklasser DSV Peter Mozelius.
Stack och Kö -Implementering -Tilllämpningar -- Kapitel 16, 11.
Sid period2CD5250 OOP med C++ Mats Medin MDH/IDT Undantag - eng. Exceptions Viktig del av klassbiblioteksdesign “Hoppa direkt ut med felkod” class.
Sid period2CD5250 OOP med C++ Mats Medin MDH/IDT Abstrakta Containertyper Vilka finns fördefinierade? Vad kan dom?
Köer -- Kapitel 16. Principen med en kö Köer är FIFO datastrukturer  First In – First Out  enqueue() Lägg till data i kön (först)  dequeue() Hämta.
ITM1 Kapitel 8 Datastrukturer Grundläggande datavetenskap, 4p Utgående från boken Computer Science av: J. Glenn Brookshear.
© Anders Broberg, Ulrika Hägglund, Lena Kallin Westin, 2003 Datastrukturer och algoritmer Föreläsning 13 Sortering.
Sid period2CD5250 OOP med C++ Mats Medin MDH/IDT Funktionsmall template void myfunc(Type * arr, int n) { // kod; // objekt av typ Type kan deklareras.
Lite ObjektOrienterad Analys och Design sid. 1 6/1/2015 CD5250 OOP med C++ Mats Medin MDH/IDT Lite OOA/OOD.
Malmö högskola Rolf Axelsson 2003/2004 DA7235, 4 poäng Fält som returvärde Sortera fält Söka i fält Tvådimensionella fält Fält och spelplan Föreläsning.
C++ som ett bättre C Sid 1 6/23/2015CD5250 OOP med C++ Mats Medin MDH/IDT C++ kurs CD5250, vårterminen 2000 Lärare: Mats Medin,
Överlagring av operatorer, friends, user-defined conversions, klassmallar sid. 1 6/29/2015 CD5250 OOP med C++ Mats Medin MDH/IDT Överlagring av operatorer.
Objektbaserad programmering sid. 1 6/30/2015CD5250 OOP med C++ Mats Medin MDH/IDT Objektbaserad programmering –Grundläggande om klasser och objekt – (Arv.
Objektorienterad programmering sid. 1 7/15/2015 CD5250 OOP med C++ Mats Medin MDH/IDT Objektorienterad programmering OOP = objektbaserad programmering.
Uppgifter/Läxa Lös uppgifterna: 120, 121, 123, 125, 126, 128, 130, 133, 142, 144, 145.
Hud & hudsjukdomar Fredrik Hieronymus.
Behandlas under 4 kursträffar i mineralmuseet
Administration Distribution Metabolism Exkretion
Kapitel 3 Sannolikhet och statistik
Kap. 3 Derivator och Integraler
Sol i Syd Projektdagen 2017 Region Blekinge
SP Sveriges Tekniska Forskningsinstitut
KONJUNKTURINSTITUTET
KPP053, HT2016 MATLAB, Föreläsning 2
Praktiska grejer Lärare: Erik Ramm-Schmidt Läxorna finns på Wilma
Kapitel 1 Algebra och linjära modeller manada.se.
Kursintroduktion Brukarorienterad design
Kapitel 2 Förändringshastigheter och derivator manada.se.
Behandlas under 4 kursträffar i mineralmuseet mars-april 2017
Sällsynta jordartsmetaller
X Avrundning och överslagsräkning
Styrelsen i stallet vecka 20
Dagläger MTB i Högbobruk
Sportlovsläger 9-12 feb Årshjulet med läger på skolloven börjar med ett dagläger för våra tävlingsgymnaster Vi hälsar alla gymnasterna i S- och R-ben samt.
Välkommen till vårt Öppet Hus, SeniorNet Huddinge
20% rabatt (På ordinarie priser)
Nu finns det möjlighet att köpa en klubboverall via Team Sportia
Litteraturhistoria åk9.
CAMPUS SUNDSVALL Campus Sundsvall is situated a short walk from the centre of the city. It has lovely scenery, with leafy groups of trees and a beautiful.
Individuell behandling Mindfulness Drop-in
Öppen mötesplats för seniorer
APT 5 februari 2014, beslutdatum
Buon appetito – Smaklig måltid
Detaljer i exception-hantering
Objektorienterad programmering forts
LPP – Rörelse Simning och livräddning åk 9
Patientöversikt & Analysyta
Försäkring, och tankar innan större projekt
Föräldramöte NSK F09/10 säsongen
Banan och ananas i frasigt täcke!
Vad är på gång i livsmedelskontrollen
Vårdsamordning – utskrivningsprocessen Ingen på sjukhus i onödan
Elanvändning i Norden och systempris (rullande 52-veckorsvärde)
Läkemedel – Kort version
Lund City en stadskärna i världsklass – Workshop 3 19/6 2019
Lokalt jobbspår serviceassistent äldreomsorg
Välkomna Föräldramöte VIK TEAM-05
ÖVERVAKNINGS-KOMMITTÉN junimötet 2019
Gästnätter i Östergötlands län, jan-mar 2019
TITEL I ARIAL NARROW BOLD 96 PT
Presentationens avskrift:

Iteratorer och generiska algoritmer sid. 1 6/28/2015 CD5250 OOP med C++ Mats Medin MDH/IDT Iterator vector ::iterator b = ivec.begin() vector ivec vector ::iterator e = ivec.end() vector ::iterator myiter ++myiter *myiter

Iteratorer och generiska algoritmer sid. 2 6/28/2015 CD5250 OOP med C++ Mats Medin MDH/IDT Iteratoranvändning for (vector ::iterator myiterator = mycontainer.begin(); myiterator!= mycontainer.end(); ++ myiterator) cout << * myiterator << endl;

Iteratorer och generiska algoritmer sid. 3 6/28/2015 CD5250 OOP med C++ Mats Medin MDH/IDT Iteratorklass ++ * == != container ::iterator (ev. fler)

Iteratorer och generiska algoritmer sid. 4 6/28/2015 CD5250 OOP med C++ Mats Medin MDH/IDT Alla abstrakta containertyper definierar iterator-typ const_iterator-typ –för traversering av const container Varje abstrakt containertyp har members begin() end()

Iteratorer och generiska algoritmer sid. 5 6/28/2015 CD5250 OOP med C++ Mats Medin MDH/IDT Generiska algoritmer Kan användas på containertyper och arrays Använder iteratorer Implementerar vanligt förekommande operationer t.ex. min, max, leta upp, sortera Algoritmen (tillvägagångssättet) är i princip oberoende av container-sort och vilken typ som lagras i containern/arrayen

Iteratorer och generiska algoritmer sid. 6 6/28/2015 CD5250 OOP med C++ Mats Medin MDH/IDT Exempel min() Antag första elementet minst. Jämför med nästa. Om det är mindre, antag att det är minst. Då det är slut på element vet vi att vårt sista antagande är rätt

Iteratorer och generiska algoritmer sid. 7 6/28/2015 CD5250 OOP med C++ Mats Medin MDH/IDT Generisk implementation Vi behöver veta Hur vi får fram första elementet Hur vi får fram nästa element Hur man jämför element Hur vi vet att det är slut på element

Iteratorer och generiska algoritmer sid. 8 6/28/2015 CD5250 OOP med C++ Mats Medin MDH/IDT exempel ur algorith.h template ForwardIterator min_element (ForwardIterator first, ForwardIterator last) { if (first == last) return first; ForwardIterator result = first; while (++first != last) if (*first < *result) result = first; return result; }

Iteratorer och generiska algoritmer sid. 9 6/28/2015 CD5250 OOP med C++ Mats Medin MDH/IDT exempel ur algorith.h template InputIterator find (InputIterator first, InputIterator last, const T& value) { while (first != last && *first != value) ++first; return first; }