Software Engineering | |||||
Bachelor | TR-NQF-HE: Level 6 | QF-EHEA: First Cycle | EQF-LLL: Level 6 |
Course Code: | BYM202 | ||||
Course Name: | Data Structures and Algorithms | ||||
Course Semester: | Spring | ||||
Course Credits: |
|
||||
Language of instruction: | TR | ||||
Course Requirement: | |||||
Does the Course Require Work Experience?: | No | ||||
Type of course: | Necessary | ||||
Course Level: |
|
||||
Mode of Delivery: | Face to face | ||||
Course Coordinator : | Dr.Öğr.Üyesi KEMAL ÇAĞRI SERDAROĞLU | ||||
Course Lecturer(s): |
Prof. Dr. RÜYA ŞAMLI |
||||
Course Assistants: |
Course Objectives: | The aim of the course is to teach basic data structures and algorithms and how they can be used in different application areas. |
Course Content: | Fundamentals of Algorithmic Problem Solving, Fundamentals of Algorithm Analysis, List and Linked Lists, Queue and Stack, Trees, Search Algorithms, Sort Algorithms, Divide and Conquer Algorithms, Graphs, Recurrence Relations |
The students who have succeeded in this course;
1) The student learns the correct and effective algorithm design. 2) The student learns important basic data structures such as heap, Queue, Tree, Graph and can use them correctly in problem solving. 3) The student learns the most important data structures and algorithms used today. 4) The student can analyze the best, average and worst working times of algorithms with algorithm analysis. 5) The student can solve new problems using techniques learned from standard algorithms. 6) To have professional and ethical responsibilities, to be able to take authority and fulfill the requirements 7) To be able to communicate effectively verbally and in writing in Turkish and English 8) Knowledge of the global and societal impacts of engineering practices on priority issues such as health, environment and safety; knowledge of contemporary issues; legal aspects of engineering solutions awareness of the consequences |
Week | Subject | Related Preparation |
1) | Introduction to data structures, basic data types and data concept | |
2) | Fundamentals of algorithm analysis, time and size complexities (asymptotic notations) | |
3) | Lists, linked list structures and applications | |
4) | Queue data structure and applications | |
5) | Stack data structure and applications | |
6) | Recursion concept | |
7) | Tree structure, binary trees, binary search trees | |
8) | Heap trees | |
9) | Hash structure, properties and applications | |
10) | Search algorithms, string search algorithms | |
11) | Sorting algorithms | |
12) | Divide and conquer algorithms | |
13) | Graflar, Graflar üzerinde gezinti (BFS, DFS) | |
14) | Minimum spanning tree, shortest path algorithms |
Course Notes / Textbooks: | Introduction to Algorithms, Third Edition, Thomas H. Cormen, Charles E. Leiserson, Ronald L. Rivest, Clifford Stein, The MIT Press, 2009. Algorithms, 4th Edition by Robert Sedgewick and Kevin Wayne, Addison-Wesley Professional, 2011. |
References: | Ders Kitabı, Ders Notları |
No Effect | 1 Lowest | 2 Medium | 3 Highest |
Program Outcomes | Level of Contribution | |
1) | Sufficient knowledge in mathematics, science and software engineering discipline-specific topics; the theoretical and practical knowledge in these areas, the ability to use in complex engineering problems. | 3 |
2) | The ability to identify, formulate, and solve complex engineering problems; selecting and applying appropriate analysis and modelling methods for this purpose. | 3 |
3) | The ability to design a complex system, process, device or product under realistic constraints and conditions to meet specific requirements; the ability to apply modern design methods for this purpose. | 3 |
4) | Ability to develop, select and use modern techniques and tools necessary for analysis and solution of complex problems in engineering applications; ability to use information technologies effectively. | 3 |
5) | Ability to design experiments, conduct experiments, collect data, analyse and interpret the results of complex engineering problems or discipline-specific research topics. | 2 |
6) | Disiplin içi ve çok disiplinli takımlarda etkin biçimde çalışabilme becerisi; bireysel çalışma becerisi. | 2 |
7) | Awareness of the need for lifelong learning; access to knowledge, ability to follow developments in science and technology, and constant self-renewal. | 2 |
8) | Effective communication skills in Turkish oral and written communication; at least one foreign language knowledge; ability to write effective reports and understand written reports, to prepare design and production reports, to make effective presentations, to give clear and understandable instructions and to receive. | 2 |
9) | Conformity to ethical principles, professional and ethical responsibility; Information on standards used in engineering applications. | 2 |
10) | Information on practices in business, such as project management, risk management and change management; awareness about entrepreneurship, innovation; information on sustainable development. | 2 |
11) | Information on the effects of engineering applications on health, environment, and safety in universal and social dimensions, and on the problems of the modern age in engineering; awareness of the legal consequences of engineering solutions. | 2 |
12) | Adequate skills in the analysis, design, verification, evaluation, implementation, implementation, and maintenance of software systems | 2 |
Course | |
Labs | |
Homework | |
Proje Hazırlama |
Yazılı Sınav (Açık uçlu sorular, çoktan seçmeli, doğru yanlış, eşleştirme, boşluk doldurma, sıralama) | |
Homework | |
Bireysel Proje | |
Raporlama |
Semester Requirements | Number of Activities | Level of Contribution |
Application | 5 | % 20 |
Homework Assignments | 4 | % 20 |
Midterms | 1 | % 20 |
Final | 1 | % 40 |
total | % 100 | |
PERCENTAGE OF SEMESTER WORK | % 60 | |
PERCENTAGE OF FINAL WORK | % 40 | |
total | % 100 |
Activities | Number of Activities | Aktiviteye Hazırlık | Aktivitede Harçanan Süre | Aktivite Gereksinimi İçin Süre | Workload | ||
Course Hours | 14 | 3 | 42 | ||||
Laboratory | 14 | 2 | 28 | ||||
Study Hours Out of Class | 14 | 6 | 84 | ||||
Homework Assignments | 4 | 8 | 32 | ||||
Midterms | 1 | 1 | 1 | ||||
Final | 1 | 1 | 1 | ||||
Total Workload | 188 |