Lectures:
Iteration and recursion
Problem solving and algorithms
Analysing time-complexity of algorithms
Abstract data type, ADT list
Basic abstract data types: set, queue, stack, mapping
Hash tables
Abstract data type tree, example: expression trees
Abstract data type dictionary, search trees: binary, red-black
Search trees: AVL, B-trees
Abstract data type priority queue (heap) and disjunctive sets
Abstract data types graph and directed graph (digraph)
Searching for longest paths with dynamic programming (critical path)
Searching for shortest paths in directed graphs (algorithm Dijkstra)
Minimum spanning tree in undirected graphs, Prim and Kruskal algorithms.
Verification of partial and total program correctness
tutorials:
Practical applications of the knowledge gained through lectures. The emphasis is on the autonomous work of students with the help of assistants. During tutorials (as well at home work), students will implement several short programs and will get grades for their presentation of seminar works.
Home works:
The purpose of home works is to offer each student the opportunity to autonomously develop short programs and to encourage them for continuous study.
Algorithms and data structures 1
Igor Kononenko
I. Kononenko in sod.: Programiranje in algoritmi, Založba FE in FRI, 2008.
Pomožna literatura:
I.Kononenko in M. Robnik-Šikonja: Algoritmi in podatkovne strukture 1, Založba FE in FRI, 2003.
A.V.Aho, J.E.Hopcroft, J.D.Ullman: Data Structures and Algorithms, Addison Wesley, 1983.
Thomas H. Cormen, Stein Clifford, Charles E. Leiserson, Robert L. Rivest: Introduction to Algorithms, second edition. The MIT Press, 2001.
The goal of the course is to acquiring the basic principles of design and analysis of algorithms and basic and dynamic data structures.
Competences:
Developing skills in critical, analytical and synthetic thinking. The ability to understand and solve professional challenges in computer and information science. The ability to apply acquired knowledge in independent work for solving technical and scientific problems in computer and information science, the ability to upgrade acquired knowledge.
Basic skills in computer and information science, which includes basic theoretical skills, practical knowledge and skills essential for the field of computer and information science, Basic skills in computer and information science, allowing the continuation of studies in the second study cycle.
With successful completion of this course the student will
- be able to: autonomously develop programs, to use the basic data structures and algorithms, to independently design data structures and algorithms.
- use the learned principles for programming and design of data structures and algorithms for the development of large systems.
- adapt the known algorithms for solving similar problems in searching lists, trees and graphs
- differentiate among different complexity of algorithms for solving the same problem
- be able to design the solution of different problems using programs and algorithms, and to use the learned concepts for programming in an arbitrary programming language.
Lectures, home works, seminar works during tutorials. The emphasis is on continuous study and on autonomous and independent work at home works, exercises and seminars.
Midterm work consists of laboratory exercises, homeworks and midterm exams.
Final exam (written and theoretical exam)
grading: 5 (fail), 6-10 (pass) (according to the Statute of UL)
KONONENKO, Igor, KUKAR, Matjaž. Machine learning and data mining : introduction to principles and algorithms. Chichester: Horwood Publishing, cop. 2007. XIX, 454 str., ilustr. ISBN 1-904275-21-4. ISBN 978-1-904275-21-3. [COBISS-SI-ID 5961556]
ŠTRUMBELJ, Erik, KONONENKO, Igor. An efficient explanation of individual classifications using game theory. Journal of machine learning research, ISSN 1532-4435. [Print ed.], Jan. 2010, vol. 11, no. [1], str. 1-18, ilustr. [COBISS-SI-ID 7543636]
ROBNIK ŠIKONJA, Marko, KONONENKO, Igor. Theoretical and empirical analysis of ReliefF and RReliefF. Machine learning, ISSN 0885-6125. [Print ed.], 2003, vol. 53, str. 23-69, graf. prikazi. [COBISS-SI-ID 3813460]
KONONENKO, Igor, BRATKO, Ivan. Information-based evaluation criterion for classifier's performance. Machine learning, ISSN 0885-6125. [Print ed.], 1991, vol. 6, no. 1, str. 67-80. [COBISS-SI-ID 7717972]
KONONENKO, Igor. Machine learning for medical diagnosis : history, state of the art and perspective. Artificial intelligence in medicine, ISSN 0933-3657. [Print ed.], 2001, vol. 23, no. 1, str. 89-109. [COBISS-SI-ID 2545236]