Sotfware Design and Development II.
2020 spring semesterInheritance. Method hiding. Polymorphism. Abstract classes and interfaces. Iterators. Components. Operator overloading. Exceptions. Generic classes. Advanced sorting. Dynamic arrays. Lists. Queue and stack. Binary search tree. Red and black tree. B-tree. Heaps. Directed and undirected graphs. Trees, spanning trees. Kruskal and Prim algorithm. Connected components. Search for a path in the graph. Hashing.
Codes
Codes for the videos can be found on my GitHub, linked to this repository.
LA-06 BACKTRACK SEARCH
Back track search algorithm implemented and used in a small example project, to find out one possible solution out of many variants.
LA-07 LINKED LIST
Creating a linked list data structure. Using generic types to be more flexible with the usage of the list, and using nested classes. Check extra bits #1 and extra bits #2.
LA-08 BINARY SEARCH TREE
Creating a binary search tree data structure. Using generic types (T and K, forming key-value pairs) to be more flexible with the usage of the structure. Check extra bits.
LA-09 GRAPH
Creating a graph data structure using adjacency list. Using BFS (breadth first search) and DFS (depth first search) traversals.
LA-10 HASH TABLE
Creating hash table, a key-value based data structure. Implementing different versions (using list, using linked list, using direct addressing).