Home  »  Faculty of Engineering »  Program of Electrical and Electronics Engineering (English 30%)

COURSE UNIT TITLECOURSE UNIT CODESEMESTERTHEORY + PRACTICE (Hour)ECTS
ADVANCED PROGRAMMING TECHNIQUES EEM120 Second Term (Spring) 2 + 3 7

TYPE OF COURSE UNITCompulsory Course
LEVEL OF COURSE UNITBachelor's Degree
YEAR OF STUDY1
SEMESTERSecond Term (Spring)
NUMBER OF ECTS CREDITS ALLOCATED7
NAME OF LECTURER(S)Associate Professor Serap Altay Arpali
LEARNING OUTCOMES OF THE COURSE UNIT At the end of this course, the students;
1) To gain the ability of analyzing and designing of algorithms and using existing algorithms.
2) To gain the ability to write generalized codes and data abstraction in software development.
3) To gain the ability to separating big problems in to smaller sub parts for solving.
4) To learn the concept behind the complexity theory and gain the ability to develop appropriate software
5) To gain multidiciplinary working ability.
MODE OF DELIVERYFace to face
PRE-REQUISITES OF THE COURSEYes(BİL101)
RECOMMENDED OPTIONAL PROGRAMME COMPONENTIt is recommended for the student to take BİL101 and BİL105 courses before.
COURSE DEFINITIONFollowing topics are covered in this course: Analyzing and designing of algorithms and using existing algorithms. To gain the ability to write generalized codes and data abstraction in software development Separating big problems in to smaller sub parts for solving. To learn the concept behind the complexity theory and gain the ability to develop appropriate software
COURSE CONTENTS
WEEKTOPICS
1st Week Introduction: Review, two dimensional arrays.
2nd Week Class, Data types, Abstract Data Types (ADT)
3rd Week Pointers. First laboratory work
4th Week Strings, transformations, functions.
5th Week Parameter Transition methods, Macros and command line arguments
6th Week Structs and Recursive functions
7th Week Bitwise operations. Second laboratory work
8th Week MIDTERM
9th Week List class, list member functions and examples, implementation of iterators and usage with lists. Examples. Third laboratory work
10th Week Stack data structure. Stack class, member functions. Using and working with stacks. Examples
11th Week Introduction to Queues. Queue class and functions. Working and using queues. Examples. Fourth laboratory work.
12th Week Priority queues. Working with priority queues. Member functions. Radix sort algorithm. Examples
13th Week Dynamic data structures. Introduction to linked lists. Linked list applications. Doubly linked lists. Circular linked lists. Examples. Fifth laboratory work
14th Week Trees. Binary search trees. Designing and developing trees. Tree traversal. Searching, traversing, adding deleting in tree structure
RECOMENDED OR REQUIRED READINGData Structures with C++ Using STL, 2/E?,William H. Ford, William R. Topp, Prentice Hall
PLANNED LEARNING ACTIVITIES AND TEACHING METHODSLecture,Presentation,Questions/Answers
ASSESSMENT METHODS AND CRITERIA
 QuantityPercentage(%)
Mid-term130
Quiz410
Practice620
Total(%)60
Contribution of In-term Studies to Overall Grade(%)60
Contribution of Final Examination to Overall Grade(%)40
Total(%)100
ECTS WORKLOAD
Activities Number Hours Workload
Midterm exam122
Preparation for Quiz31030
Individual or group work000
Preparation for Final exam14040
Course hours515
Preparation for Midterm exam13030
Laboratory (including preparation)61272
Final exam122
Homework21530
Total Workload211
Total Workload / 307,03
ECTS Credits of the Course7
LANGUAGE OF INSTRUCTIONTurkish
WORK PLACEMENT(S)No
  

KEY LEARNING OUTCOMES (KLO) / MATRIX OF LEARNING OUTCOMES (LO)
LO1LO2LO3LO4LO5
K1  X   X   X   X  
K2  X   X   X   X  
K3  X     X   X  
K4  X     X   X  
K5  X   X   X   X  
K6          X
K7         
K8         
K9         
K10         
K11