Skip to page content

Courses

  • Data Sructures (10117)
  • תקציר הקורס:

    Abstract:

    Issues of the course:

    Recursion. Recursion as an interdisciplinary thinking paradigm. Analysis of Algorithms and Mathematical Foundations: Growth of functions and Asymptotic notations, Summations, Recurrences: The Substitution, Iteration and Master Methods. Searching for a term in a sorted and an unsorted list, minimum, maximum, merging sorted series, analyzing the complexity of their run times.

     Abstract Data Types, the Concept of Implementation, Data Types in C. Lists: Linked Lists, the Linked List as a Data Structure, Circular and Double Linked Lists. Stacks, Queues, Infix, Postfix, Prefix and Evaluating Expressions.

    Trees: Binary Trees and Traversals, Binary Search Trees and Josephus problem, General Trees, Balanced Trees.

    Heaps and Heapsort, analysis of Heapsort . Sorting and Searching:, Quicksort,

     analysis of Quicksort, Sorting in Linear Time : Bucket sort, Radix sort, Counting sort . Median and Order Statistics, Select algorithm and their applications. Sequential/ Binary/ Tree Searching. Hash Tables.
  • Object Oriented Design (10119)
  • תקציר הקורס:

    Abstract:

    The course deals with programming principles and Design Patterns.
  • Object-Oriented Programming (10128)
  • תקציר הקורס:

    Abstract:

    The students will learn about classes and objects, constructors,

    inheritance, polymorphism and interfaces,

    and will learn how to combine them all to an object oriented system.

    The students will learn how to show the system also using class diagrams.
  • Introduction To Programming Python (10812)
  • תקציר הקורס:

    Abstract:

    By the end of this course, the students will be able to translate a computational problem into a computer program that solves it. This will be achieved using fundamental programming principles, such as algorithm flow-charts, condition and iteration structures, f?unction and subroutines recursion and programming complexity.