CENG 218 Data Structures 2010/2011 Spring Semester

Most recent version of this site is available at http://academic.cankaya.edu.tr/~agorur/courses/ceng218/index.htm

The purpose of this course is to provide the students with solid foundations in the basic concepts of programming: data structures and algorithms. The main objective of the course is to teach students about structures and algorithms which allow them to write programs which can efficiently manipulate, store, and retrieve data.
 
Grades will be based on:
  • 4-6 assignments, worth 20 % of the final mark
  • 2-6 Pop Quizzes, worth 10 % of the final mark
  • Attendance +5 to overall score(bonus)
  • 1 midterm exam, worth 20 % of the final mark
  • Final exam, worth 35 % of the final mark
  • Project(s) 15% (will be equally shared for each project)
Homeworks Programming Assignments
The programming assignments are an important component of the course. You can create your programs anywhere you want, but they must work on our system to get full credit. Homeworks and programming assignments are due on the date and time specified. Late homeworks and programming assignments will not be accepted except when due to true emergencies.
Late Policy
For each assignment it is indicated above when it is due, and for each assignment we will give details on how to hand in the work.
All assignments must be submitted by the due dates. Late assignments will not be accepted.
Extensions will be granted only by the course instructor.
Ethical Conduct
All assignments are individual assignments. You may discuss approaches to problems among yourselves; however, the actual details of the work (assignment coding, answers to concept questions, etc.) must be an individual effort. Assignments that are judged to be the result of academic dishonesty will, for the student's first offence, be given a mark of zero with an additional penalty equal to the weight of the assignment also being applied.

Course Outline
  • Simple Data Types
    Single dimensional arrays and Multidimensional Arrays
    Records (C/C++ Structs)
    Pointers and Data Structures
    Basic Ideas about Pointers - declarations, dynamic memory allocation
  • Data Structures(Lists, Stacks, and Queues )
    General Lists
    Standard algorithms on lists
    Linked lists
    Application of linked lists
    Stacks
    Queues
    s
  • Searching
    Sequential search
    Binary search
    Sorting
    Insertion Sort, Selection Sort, Merge Sort, Quick Sort
  • Trees (Tree Traversals, Binary Trees, and Search Trees )
    Trees and Their Implementations
    Binary Trees and Their Implementations
    Tree Traversals
    The Huffman Algorithm
    Binary Search Trees
    General Search Tree
  • Hashing
  • Graphs
 

Instructor:
Abdül Kadir Görür
Office: A Blok 328-A
E-mail: agorur AT cankaya.edu.tr
url: http://academic.cankaya.edu.tr/~agorur