Mathematical Engineering Department

 
Course Name

Code

Regular Semester

Group No

ECTS

Credits

Credits

Lecture

3

Application

0

Algorithm Analysis And Data Structures

0523021

 

5

 

8

3

Laboratory

(Hour/Week)

0

Course Language

Turkish , English Optional

Compulsory or Elective

Compulsory

Instructor

Ass. Prof. Dr. Ayla SAYLI, Ass. Prof. Dr. Nilgün Güler

Course Contents

Introduction of Algorithm Analysis; Foundation of Mathematical Functions; Estimation of Program Times; Algorithms Analysis Functions; Divide & Conquer Algorithm; Euclid’s Algorithm; Binary Search; Introduction of Data Structures; Lists; Stacks; Queues; Trees; Binary Trees; Search Trees; AVL-Balanced Trees; B and B+ Trees; Sorting Methods; Greedy Algorithm; Algorithms on the base of Random Modeling; Dynamic Programming

Course Objectives

Gives a strong backgroud on Mathematical Modeling and Data Structures which could be used every areas and develop the best solutions on Computer by the use of C and C++.   

Course Outcomes (The knowledge and the skills that the student will gain at the end of the course)

1. Learns Algorithm Analysis Methods

2. Knows Data Structures

3. Learns and uses different types of Tree Structures

4. Learns Sorting Methods

5. Implements computer programs of all subjects in C and C++

6. Makes Researches-Documentation-Representation of home works

Textbook

Data Structures and Algorithm Analysis in C”, M. Allen Weisr, ISBN: 0-201-49840-5, Pearson Publications;

“Algorithms, Data Structures and Problem Solving with C++”,  Mark Allen Weiss, ISBN: 0-201-36122-1;

“Data Structures using C and C++”, Yedidyah Langsam, M. J. Augenstein, A. M. Tenenbaum;

“Algorithms & Complexity”, Wilf Herberts, Prentice Hall Pub.

“Algorithms”, Cormen L. Riresr, Mc Grawtwill

Additional  References

 

Bilg. Prog. veYaz. Müh. Veri Yapıları ve Algoritmalar”, Rıfat Çölkesen, Papatya Yayıncılık, 2002;

Borland C++ Developer Guide”, Nabajyoti Barkakati, Sams Publications

Prerequisite Courses

 

Prerequisite Subjects

At least, a programming language, preferably C or C++

Homework/Project

A home work in C / C++, its Documentation & Representation

Laboratory

Lab. Practice is necessary for students but we could not have done it because of computer lab. conditions.

Computer Applications

Yes, it has              

Additional Practices

 

 

Course  Evaluation

 

Criteria

 

Number

Effective Proportion %

Midterm Exams

2

50

Quiz

 

 

Homework

1

10

Term Projects

 

 

Term Papers

 

 

Laboratory

 

 

Other

 

 

Final Exam

1

40

Division of Course Credit (%)

Basic Sciences

 

 

Basic Engineering

 

20

Departmental Core  Courses

 

80

Social Sciences

 

 

 

WEEKLY COURSE PLAN

Week

Subject

1

Introduction of Algorithm Analysis

2

Foundation of Mathematical Functions

3

Estimation of Program Times

4

Algorithms Analysis Functions (Big Oh-O, Little Oh - o, Theta Q, Omega  W)

5

Divide & Conquer Algorithm; Euclid’s Algorithm; Binary Search;

Estimation of the Given Algorithm’s Program Times

6

Introduction of Data Structures

7

Lists

8

Lists

9

Stacks

10

Queues

11

EXAM I

12

Trees: Binary Trees; Search Trees; AVL-Balanced Trees;

13

B and B+ Trees; Sorting Methods

14

EXAM II

15

EXAM for Excusable Students

 

Prepared by:

 

 

Date:

 

 

 

 

RELATIONSHIP BETWEEN THE COURSE AND THE DEPARTMENT’S OUTPUT(S)

 

 

 

 

1

2

3

1

Model Structuring by the use of Mathematics and Basic Engineering

 

 

Ö

2

Takes Effective Role(s) in team works between other discipline(s)

 

Ö

 

3

Achieves to solve Mathematical Models by the use of Analytical, Numerical and Statistical Techniques

 

 

Ö

4

Interpretes Solutions and Results Correctly 

 

 

Ö

5

Applies Algorithm Analysis and Structuring to Solve existing Problems by the use of Computer 

 

 

Ö

6

Having the ability and knowledge of English Language to read / understand / write and present publications.

 

Ö

 

7

Researches and develops facilities with Industry and Scientific Institutions.

 

Ö

 

8

Makes educational facilities.

Ö

 

 

9

Has occupational responsibilities.

 

 

Ö

10

Trackes current developments on  the occupational areas.

 

 

Ö

11

Uses the necessary technological methods and tools.

 

 

Ö

12

Knows the importances of life time learning.

 

 

Ö