Topics Data Types and Variables Data Types and Variables Comments Control Flow Statements if-else Expressions WHEN Expressions Ranges Loop Control Statements FOR Loop WHILE Loop DO-WHILE Loop BREAK statements CONTINUE keyword Functions Basic Funtion Function as Expressions Extension Functions Infix Functions Named Parameters OOP(Object Oriented Programming) Defining Class and creating Objects Primary and Secondary Constructors Inheritance Method and Property Overriding Abstract Class, Property and Method Interface Data Class Companion Object Functional Programming Lambdas Higher-Order Functions 'with' and 'apply' function ##TODO Collections Programming Arrays List Map and HashMap Set and HashSet Data Structures Stack Queue Linked List Binary Search Tree Heap Hash Table Algorithms Recursion Quick Sort Merge Sort Bubble Sort Graph Search