Algorithms and data structures

ID: 1491
Course type: scientific and vocational
Course coordinator: Rosić Vitas B. Maja
Lecturers: Rosić Vitas B. Maja
Contact: Rosić Vitas B. Maja
Level of studies: M.Sc. (graduate) Academic Studies – Mechanical Engineering
ECTS: 6
Final exam type: written
Department: Department of Information Technologies in Mechanical Engineering

Lectures

Goal

• Basic facts of algorithm theory. • Abstract data type and basic implementation. • Data structures in mechanical engineering. • Using standard algorithms in solving simple problems in mechanical engineering.

Outcome

After successful completion of the program provided for in this case the student can: • To find data structure to solve the problem. • Use data structures and standard algorithms in solving simple problems in mechanical engineering. • To find suboptimal algorithm to solve smple problems in mechanical engineering. • To use standard algorithms to solve complex problems in mechanical engineering.

Theoretical teaching

Basic facts about algorithms. Basic facts about abstract data type. Array. Lists. Buffers. Stack. Queue. Trees. Binary tree. Binary hip. Set. Hash. Dictionary. Varies sorting and searching algorithms with apply in mechanical engineering. Hanoi towers. Quick sorting and searching. Big numbers. Polygon triangulation. Flag problem. Optimal and suboptimal salesman problem. N-Queens problem. Stable marriage problem. practical teaching Workshops with basic examples.

Practical teaching

It consists of auditory, laboratory exercises that follow the course content.

Attendance requirement

Knowledge of C/C++ languages. Basic knowledge of program design methodology. Fundamentals of software engineering.

Resources

The necessary software is under the GNU license - free of charge. In LINUX, C/C++ is immediately available. If you use another operating system, C/C++ compiler can be downloaded from the appropriate Web site

Assigned hours

Total assigned hours: 75

Active teaching (theoretical)

New material: 25
Elaboration and examples (recapitulation): 5

Active teaching (practical)

Auditory exercises: 0
Laboratory exercises: 20
Calculation tasks: 0
Seminar paper: 0
Project: 0
Consultations: 0
Discussion/workshop: 10
Research study work: 0

Knowledge test

Review and grading of calculation tasks: 0
Review and grading of lab reports: 0
Review and grading of seminar papers: 3
Review and grading of the project: 3
Test: 0
Test: 4
Final exam: 5

Knowledge test (100 points total)

Activity during lectures: 5
Test/test: 35
Laboratory practice: 0
Calculation tasks: 0
Seminar paper: 15
Project: 15
Final exam: 30
Requirement for taking the exam (required number of points): 0

Literature

T. H. Cormen, C. E. Leiserson, R. L. Rivest, C. Stein, Introduction to Algorithms, The MIT Press, Cambridge, 2009.; T. H. Cormen, C. E. Leiserson, R. L. Rivest, C. Stein, Introduction to Algorithms, The MIT Press, Cambridge, 2009.