-
Урок 1.
00:01:14
Introduction
-
Урок 2.
00:03:55
Why to use data structures
-
Урок 3.
00:03:59
Data structures and abstract data types
-
Урок 4.
00:05:56
Arrays introduction - basics
-
Урок 5.
00:05:55
Arrays introduction - operations
-
Урок 6.
00:09:53
Using arrays
-
Урок 7.
00:08:44
ArraysLists in Java
-
Урок 8.
00:03:07
Reversing an array in-place solution
-
Урок 9.
00:03:52
Anagram problem solution
-
Урок 10.
00:07:57
Duplicates in an array problem solution
-
Урок 11.
00:06:21
Reservoir sampling solution
-
Урок 12.
00:07:10
Linked lists theory - basics
-
Урок 13.
00:09:33
Linked list theory - operations
-
Урок 14.
00:01:41
Linked list theory - doubly linked lists
-
Урок 15.
00:06:37
Linked list theory - linked lists versus arrays
-
Урок 16.
00:04:48
Linked list implementation I
-
Урок 17.
00:11:42
Linked list implementation II
-
Урок 18.
00:07:56
Linked list implementation III
-
Урок 19.
00:06:00
Doubly linked list introduction
-
Урок 20.
00:08:15
Linked lists in java.util
-
Урок 21.
00:05:18
Practical (real-world) applications of linked lists
-
Урок 22.
00:05:31
Finding the middle node in a linked list solution
-
Урок 23.
00:07:34
Reverse a linked list in-place solution
-
Урок 24.
00:04:02
Stack introduction
-
Урок 25.
00:07:24
Stacks in memory management ( stacks, heaps )
-
Урок 26.
00:07:03
Stacks and recursive method calls
-
Урок 27.
00:07:29
Stack implementation with linked list I
-
Урок 28.
00:03:39
Stack implementation with linked list II
-
Урок 29.
00:11:03
Stack implementation with arrays
-
Урок 30.
00:01:19
Dijkstra's interpreter introduction
-
Урок 31.
00:09:13
Dijkstra's interpreter implementation
-
Урок 32.
00:05:11
Java built in java.util.Stack
-
Урок 33.
00:03:21
Practical (real-world) applications of stacks
-
Урок 34.
00:05:14
Queues introduction
-
Урок 35.
00:09:44
Queue implementation with linked list
-
Урок 36.
00:06:33
Java built in java.util.Queue
-
Урок 37.
00:05:50
Max in a stack problem solution
-
Урок 38.
00:05:50
Stack with queue solution
-
Урок 39.
00:04:54
Stack with queue solution - recursion
-
Урок 40.
00:10:25
Binary search trees theory - basics
-
Урок 41.
00:04:27
Binary search trees theory - search, insert
-
Урок 42.
00:06:09
Binary search trees theory - delete
-
Урок 43.
00:04:26
Binary search trees theory - in-order traversal
-
Урок 44.
00:02:12
Binary search trees theory - running times
-
Урок 45.
00:07:03
Binary search trees implementation I - Node, Tree
-
Урок 46.
00:09:56
Binary search trees implementation II - insertion
-
Урок 47.
00:07:25
Binary search tree implementation III - maximum, minimum
-
Урок 48.
00:05:43
Binary search tree implementation IV - traversal
-
Урок 49.
00:09:26
Binary search tree implementation V - remove
-
Урок 50.
00:05:55
Binary search tree implementation VI - remove II
-
Урок 51.
00:06:45
Custom objects in a tree
-
Урок 52.
00:03:07
Practical (real-world) applications of trees
-
Урок 53.
00:05:16
Compare binary trees solution
-
Урок 54.
00:11:31
k-th smallest element in a search tree solution
-
Урок 55.
00:09:48
Family age problem solution
-
Урок 56.
00:04:14
AVL trees introduction - motivation
-
Урок 57.
00:05:22
AVL trees introduction - basics
-
Урок 58.
00:08:45
AVL trees introduction - height
-
Урок 59.
00:10:18
AVL trees introduction - rotations cases
-
Урок 60.
00:10:51
AVL trees introduction - illustration
-
Урок 61.
00:03:39
AVL trees introduction - sorting
-
Урок 62.
00:03:22
AVL implementation - Node and Tree
-
Урок 63.
00:04:46
AVL implementation - balance and height parameters
-
Урок 64.
00:07:37
AVL implementation - implementing the rotations
-
Урок 65.
00:06:04
AVL implementation - insertion I
-
Урок 66.
00:08:53
AVL implementation - insertion II
-
Урок 67.
00:03:20
AVL implementation - testing
-
Урок 68.
00:06:36
AVL tree remove introduction
-
Урок 69.
00:08:32
AVL tree remove implementation I
-
Урок 70.
00:03:56
AVL tree generic implementation
-
Урок 71.
00:10:39
Red-black trees introduction - basics
-
Урок 72.
00:04:16
The logic behind red-black trees
-
Урок 73.
00:05:11
Red-black trees rotations- cases I
-
Урок 74.
00:04:26
Red-black trees rotations- cases II
-
Урок 75.
00:03:18
Red-black trees rotations- cases III
-
Урок 76.
00:02:47
Red-black trees rotations- cases IV
-
Урок 77.
00:04:48
Red-black trees introduction - example I
-
Урок 78.
00:04:20
Red-black trees introduction - example II
-
Урок 79.
00:03:26
Red-black tree versus AVL tree
-
Урок 80.
00:04:29
Red-black tree implementation I - Node class
-
Урок 81.
00:02:07
Red-black tree implementation II - traverse
-
Урок 82.
00:03:41
Red-black tree implementation III - insert
-
Урок 83.
00:05:49
Red-black tree implementation IV - rotate left / right
-
Урок 84.
00:09:53
Red-black tree implementation V - fixing the violations
-
Урок 85.
00:05:54
Red-black tree implementation VI - fixing the violations
-
Урок 86.
00:02:01
Red-black tree implementation VII - testing
-
Урок 87.
00:12:50
Splay tree introduction I - basics
-
Урок 88.
00:03:53
Splay tree introduction II - example
-
Урок 89.
00:09:45
Splay tree implementation I - find, rotate
-
Урок 90.
00:05:51
Splay tree implementation II - splaying
-
Урок 91.
00:03:36
Splay tree implementation III - testing
-
Урок 92.
00:13:02
B-tree introduction - basics
-
Урок 93.
00:04:08
B-tree and external memory
-
Урок 94.
00:05:42
Disk access times
-
Урок 95.
00:02:48
B-tree introduction - search
-
Урок 96.
00:07:11
B-tree introduction - insertion
-
Урок 97.
00:05:32
B-tree introduction - deletion
-
Урок 98.
00:04:07
In-order traversal
-
Урок 99.
00:08:14
Priority queues introduction
-
Урок 100.
00:08:15
Heap introduction - basics
-
Урок 101.
00:09:18
Heap introduction - array representation
-
Урок 102.
00:04:44
Heap introduction - remove operation
-
Урок 103.
00:05:14
Heap introduction - heapsort
-
Урок 104.
00:05:06
Heap introduction - running times
-
Урок 105.
00:03:00
Other types of heaps: binomial and Fibonacci heap
-
Урок 106.
00:08:29
Heap implementation I
-
Урок 107.
00:06:39
Heap implementation II
-
Урок 108.
00:05:01
Heap implementation III
-
Урок 109.
00:08:34
Heaps in java.util.PriorityQueue
-
Урок 110.
00:06:43
Checking array heap representation solution
-
Урок 111.
00:06:42
Converting max heap to min heap solution
-
Урок 112.
00:02:38
Associative array ADT
-
Урок 113.
00:09:06
Hashtables introduction - basics
-
Урок 114.
00:07:01
Hashtables introduction - collisions
-
Урок 115.
00:06:04
Hashtables introduction - load factor & dynamic resizing
-
Урок 116.
00:04:06
Chaining method summary
-
Урок 117.
00:09:17
Chaining implementation I - put
-
Урок 118.
00:04:29
Chaining implementation II - get
-
Урок 119.
00:08:01
Chaining implementation III - testing
-
Урок 120.
00:04:00
Linear probing summary
-
Урок 121.
00:05:34
Linear probing implementation I - put
-
Урок 122.
00:02:59
Linear probing implementation II - get
-
Урок 123.
00:04:45
Linear probing implementation III - testing
-
Урок 124.
00:06:46
Generic linear probing implementation I - basics
-
Урок 125.
00:04:15
Generic linear probing implementation II - get
-
Урок 126.
00:05:36
Generic linear probing implementation III - put
-
Урок 127.
00:06:28
Generic linear probing implementation IV - remove
-
Урок 128.
00:05:31
Generic linear probing implementation V - resize
-
Урок 129.
00:02:40
Generic linear probing implementation VI - testing
-
Урок 130.
00:02:06
Generic linear probing implementation - hashCode
-
Урок 131.
00:05:53
Maps in Java Collections
-
Урок 132.
00:06:32
Practical (real-world) applications of hashing
-
Урок 133.
00:07:30
Two sum problem solution
-
Урок 134.
00:03:27
Why to use cache?
-
Урок 135.
00:08:07
LRU cache introduction
-
Урок 136.
00:04:23
LRU cache implementation I
-
Урок 137.
00:11:19
LRU cache implementation II
-
Урок 138.
00:11:58
Fenwick trees theory I - basics
-
Урок 139.
00:04:43
Fenwick trees theory II - tree structure
-
Урок 140.
00:08:03
Fenwick trees theory III - update
-
Урок 141.
00:05:12
Fenwick trees implementation