Lecture Notes

Lab Works & Source Codes (https://webonline.cankaya.edu.tr/)

  1. Arrays(Arrays), String and Vectors in C++ , Strings and Vectors
  2. File Input/Output in C++ (PPT)

  3. Pointers and Dynamic Arrays (PPT)

  4. Lists (PPT) (updated on 21/07/2020)
    • Static Array Based
    • Dynamic Array Based
    • Linked Structures (ppt) (.doc)
  5. Stack (Stack.docx)
    • Notes on Stack impl. (ppt)
    • Stack Applications (ppt) & Implementations(Source Codes are available at Webonline)
  6. Queue (Queue.docx)
    • Notes on Queue impl. (ppt) (source code)
    • Queue Applications & Implementations(Source Codes are available at Webonline)
  7. Recursion
    Week 1(ppt1)(ppt2)
    Week 2(ppt) (27/04/2020) (c++ codes developed during lecture hours)
  8. Binary Trees (ppt1)
    Tree Node Defintion
    Traversal Algorithms (.cpp)
    Recursive Algoritms on Binary Trees (.cpp)
  9. Binary Search Trees (ppt)
    BST Insert Algo(.cpp)
    Level Order Taversal (Non Recursive (Iterative) algorithms on Binary Trees) (.cpp) (same source code has some interesting recursive algorithms on Binary Trees)
  10. Additional and Important Notes on Binary Trees and Binary Search Trees
    Binary Trees (word1)(word2
    Binary Search Trees (word1)
  11. Introduction to Time Complexities: Big O notation. (ppt) ( will not be asked in the final exam, just read and try to understand)
    1. Big Oh Notation Cheat Sheet
  12. Priority Queue - Min/Max Heap - Heap Sort (ppt)
  13. Huffman Coding: An Application of Binary Trees and Priority Queues
  14. Searching and Sorting


Please take your time and read this article(s):

  1. Programming Style (from wikipedia)
  2. Abstraction in Computer Science