Information Package

Master's of Information Technology and System Management with Thesis

BTS531

ALGORITHMS

Course Code
BTS531
Semester
-
Theory+Practice
3 + 0
ECTS
10
Course TypeElective Course
Course LevelMaster's Degree With Thesis
Year of Study-
Semester-
ECTS10
Name of Lecturer(s) -
Learning Outcomes

At the end of this course, the students;

  1. 1. Will have learned the most common types of algorithms, 2. Are expected to be able to construct the main Java Data Structures and use the methods defined on them .
  2. 2. Are expected to be able to construct the main Java Data Structures and use the methods defined on them .
Mode of DeliveryFace to face
PrerequisitesNo
Recommended Optional Programme ComponentsThere is no recommended optional programme component for this course.
Course DescriptionThe Role of Algorithms in Computing, Growth of Functions, Recurrences, Probabilistic Analysis and Randomized Algorithms, Sorting and Order Statistics, Heapsort, Quicksort, Sorting in Linear Time, Medians and Order Statistics, Data Structures, Elementary Data Structures, Hash Table, Binary Search Trees, Red-Black Trees, Augmenting Data Structures, Advanced Design and Analysis Techniques, Dynamic Programming, Greedy Algorithms, Amortized Analysis, Advanced Data Structures, B-Trees, Binomial Heaps, Fibonacci Heaps, Data Structures for Disjoint Sets, Graph Algorithms, Elementary Graph Algorithms, Minimum Spanning Trees, Single-Source Shortest Paths, All-Pairs Shortest Paths, Maximum Flow, Selected Topics, Sorting Networks, Matrix Operations, Linear Programming, Polynomials and the FFT, Number-Theoretic Algorithms, String Matching, Computational Geometry, NP-Completeness, Approximation Algorithms.
Course Contents
WEEK TOPICS
1st Week Introduction to Java Data Structures and Algorithms
2nd Week Interfaces of Java Collections Framework
3rd Week Class ArrayList and algorithms on it
4th Week Class LinkedList and algorithms on it
5th Week Class Stack and algorithms on it
6th Week Class Queue and algorithms on it
7th Week Class Priority Queue and algorithms on it
8th Week MIDTERM
9th Week Class TreeSet and algorithms on it
10th Week Class HashSet and algorithms on it
11th Week Class LinkedHashSet and algorithms on it
12th Week Class Hashtable and algorithms on it
13th Week Class HashMap and algorithms on it
14th Week Applications
Recommended or Required Reading1. Timur Karaçay, Java Veri Yapıları, Oracle yayınları, 2011.
2. William Joseph Collins. Data structures and the Java collections framework, McGraw-Hill, 2001.
3. N.B. Dale, D.T. Joyce, and C. Weems. Object-oriented data structures using Java. Jones and Bartlett, London, 2006.
4. Peter Drake. Data structures and algorithms in Java. Prentice Hal, 2006.
5. W. Ford and W.R Topp. Data structures with Java. Prentice Hall, 2004.
6. M.T. Goodrich and Roberto Tamassia. Data Structures and Algorithms in Java. John Wiley and Sons, London, 1960.
7. Simon Gray. Data Structures in Java: From Abstract Data Types to the Java Collections Framework. Addison Wesley, 2006.
8. S. James and M. Gray. Data structures in Java: from abstract data types to the Java Collections Framework. Pearson Addison-Wesley, 2007.
9. Robert Lafore. Data Structures and Algorithms in Java. Sams, 2002.
10. Robert Sedgewick. Algorithms in Java. Addison-Wesley, 2003.
11. Mark Allen Weiss. Data structures and algorithm analysis in Java. Peason Addison-Wesley, 2007.
12. Web sources.
Planned Learning Activities and Teaching Methods
  • Lecture
  • Questions/Answers
  • Problem Solving
  • Other
Assessment Methods and Criteria
Language of InstructionTurkish
Work Placement(s)No
LO1 LO2
K1 X X
K2 X
K3
K4 X
K5 X
K6 X
K7 X
K8 X
K9 X
K10 X
K11