Upload
sybil-wilkerson
View
219
Download
0
Tags:
Embed Size (px)
Citation preview
Teaching MAD@ASDonlineTeaching MAD@ASDonline 11
Teaching Discrete Teaching Discrete Mathematics and Mathematics and Algorithms & Data Algorithms & Data Structures OnlineStructures Online
G.MirkowskaG.MirkowskaPJIITPJIIT
Teaching MAD@ASDonlineTeaching MAD@ASDonline 22
Discrete Mathematics courseDiscrete Mathematics course
Discrete Mathematics is a fundamental part of Discrete Mathematics is a fundamental part of mathematical education for informatitions.mathematical education for informatitions.
It play an important role in Computer Science.It play an important role in Computer Science.
The goal of the lecture is to introduce several The goal of the lecture is to introduce several fundamental notions and tools: functions, fundamental notions and tools: functions, relations, graphs, models, satisfiability, induction relations, graphs, models, satisfiability, induction etc. etc.
These notions are key components not only in These notions are key components not only in theoretical computer science, but also in practical theoretical computer science, but also in practical computing.computing.
Teaching MAD@ASDonlineTeaching MAD@ASDonline 33
DM AimsDM Aims
The course is designed to: The course is designed to:
give a general knowledge about the area of give a general knowledge about the area of discrete mathematics, discrete mathematics,
more in-depth knowledge of selected topics, more in-depth knowledge of selected topics, help students to understand abstract notions, help students to understand abstract notions, introduce the methods of proving in mathematics introduce the methods of proving in mathematics
and in computer science. and in computer science.
Teaching MAD@ASDonlineTeaching MAD@ASDonline 44
Learning outcomesLearning outcomes
After having followed this course, students should After having followed this course, students should
understand the basic definitions and concepts,understand the basic definitions and concepts, have knowledge of the basic techniques and have knowledge of the basic techniques and
know how to apply them,know how to apply them, be able to understand new situations and be able to understand new situations and
concepts, and relate them to existing knowledge; concepts, and relate them to existing knowledge; be able to model actual situations in a be able to model actual situations in a
mathematical way. mathematical way.
Teaching MAD@ASDonlineTeaching MAD@ASDonline 55
DM - Topics coveredDM - Topics covered
Algebra of setsAlgebra of sets Graphs, basic notionsGraphs, basic notions FunctionsFunctions Relations (algebra of relations, orderings, Relations (algebra of relations, orderings,
equivalence )equivalence ) Elements of classical logicElements of classical logic Induction and recursionInduction and recursion CombinatoricsCombinatorics Elements of discrete probabilityElements of discrete probability
Teaching MAD@ASDonlineTeaching MAD@ASDonline 66
Algorithms and Data Structures Algorithms and Data Structures coursecourse
This course is an introduction to the design & This course is an introduction to the design & analysis of wide variety of algorithms. analysis of wide variety of algorithms. The topic is often called `Algorithmics'. The topic is often called `Algorithmics'.
Emphasis is put onEmphasis is put on specification,specification, matching the appropriate data structures and matching the appropriate data structures and
algorithms to application problems,algorithms to application problems, correctness, correctness, complexity analysiscomplexity analysis. .
Teaching MAD@ASDonlineTeaching MAD@ASDonline 77
ADS - Course objectivesADS - Course objectives
Study efficient algorithms for a number of Study efficient algorithms for a number of fundamental problems, fundamental problems,
learn techniques for designing algorithms, learn techniques for designing algorithms, learn fundamental data structures and how to use learn fundamental data structures and how to use
them in appropriate way, them in appropriate way, prove software correctness, prove software correctness, analyze running time of algorithms. analyze running time of algorithms.
Teaching MAD@ASDonlineTeaching MAD@ASDonline 88
Learning outcomesLearning outcomes
be able to develop efficient algorithms for simple be able to develop efficient algorithms for simple tasks,tasks,
be able to specify algorithms and data structures,be able to specify algorithms and data structures, be able to verify correctness of simple algorithms,be able to verify correctness of simple algorithms, understand the concepts of time and space understand the concepts of time and space
complexity, complexity, know several representations of data structures know several representations of data structures
and know how and when to use them,and know how and when to use them, know and understand the idea of different methods know and understand the idea of different methods
of constructing algorithms,of constructing algorithms, understand the notion of tractable and intractable understand the notion of tractable and intractable
problems. problems.
Teaching MAD@ASDonlineTeaching MAD@ASDonline 99
ADS – Topics coveredADS – Topics covered
Preliminaries, specification, correctness, Preliminaries, specification, correctness, complexitycomplexity
Searching and Sorting algorithms Searching and Sorting algorithms Data structures (specification, implementation)Data structures (specification, implementation)
Tables, stacks, queuesTables, stacks, queues Trees BST, AVL, HeapTrees BST, AVL, Heap Dictionaries, Hash tablesDictionaries, Hash tables Priority queues, HeapPriority queues, Heap Find-Union structureFind-Union structure
Teaching MAD@ASDonlineTeaching MAD@ASDonline 1010
ASD – Topics coveredASD – Topics covered
Algorithms on graphsAlgorithms on graphs Dijkstra, Kruskal, Prim, Huffman, etc.Dijkstra, Kruskal, Prim, Huffman, etc.
Methods of constructing algorithmsMethods of constructing algorithms Divide and conquer Divide and conquer Dynamic programming Dynamic programming Greedy strategiesGreedy strategies
Algorithms in geometry Algorithms in geometry Hard problemsHard problems
Teaching MAD@ASDonlineTeaching MAD@ASDonline 1111
Lectures DetailsLectures Details
The courses were divided on 15 lectures.The courses were divided on 15 lectures. Each lecture has 5-7 short sections.Each lecture has 5-7 short sections.
PicturesPictures Questions @ Answers Questions @ Answers ProblemsProblems ExamplesExamples Presentations .pptPresentations .ppt
The last section is devoted to exercises. The last section is devoted to exercises. Each lecture is supported by a set of questions.Each lecture is supported by a set of questions.
lecture
presentation
aplet sort.
aplet heap
Quiz
Teaching MAD@ASDonlineTeaching MAD@ASDonline 1212
DM Week scheduleDM Week schedule
One lecture per weekOne lecture per week Test for 2-3 days (evaluated)Test for 2-3 days (evaluated)
usually 5 questions = 5 pointsusually 5 questions = 5 points many possible answersmany possible answers
Homework (evaluated in iterative process)Homework (evaluated in iterative process) usually two problems the solutions of which usually two problems the solutions of which
should be written with explanation and sent to should be written with explanation and sent to the theacher.the theacher.
M T W T F S Su M T W T F S Sureading lecture
tests solving
homework
solve solve
implement implement
write write documentationdocumentation
Teaching MAD@ASDonlineTeaching MAD@ASDonline 1313
Evaluation -> ConclusionEvaluation -> Conclusion
Half of the total number of points allows a student Half of the total number of points allows a student to be accepted for the final exam. to be accepted for the final exam.
exams 40 points exams 40 points accepted 20/40accepted 20/40