ABCDEFGHIJKLMNOPQRSTUVWXYZ
1
Extra Material By Topic for CSE 2341 - Data Structures
2
3
4
5
Pointers and Dynamic Memory
6
Introuduction to Double Pointer C++https://youtu.be/ZMDYsr9scGo
7
How to Create a Dynamically Allocated Arrayhttps://youtu.be/GHLv3fNLOh0
8
Pass by pointer vs Pass by reference to pointerhttps://youtu.be/7HmCb343xR8
9
C++ Programming Tutorials Playlist (Focus on videos 38-42)https://www.youtube.com/playlist?list=PLAE85DE8440AA6B83
10
11
12
13
General C++ Stuff
14
Command Line Argshttps://youtu.be/aP1ijjeZc24
15
C++ Programming Tutorials Playlist - a great set of C++ videoshttps://www.youtube.com/playlist?list=PLAE85DE8440AA6B83
16
C++ Essential Training
https://www.lynda.com/C-tutorials/C-Essential-Training/182674-2.html?org=smu.edu
17
CATCH and TDDhttps://youtu.be/C2LcIp56i-8
18
19
20
21
Linked Lists
22
Understanding Basic List Implementations
http://www.lynda.com/Developer-Programming-Foundations-tutorials/Foundations-Programming-Data-Structures/149042-2.html?org=smu.edu
23
Doubly Linked LIsts
http://www.lynda.com/Developer-Programming-Foundations-tutorials/Using-singly-doubly-linked-lists/149042/177117-4.html?org=smu.edu
24
std::listhttp://en.cppreference.com/w/cpp/container/list
25
std::forward_list (since c++11)http://en.cppreference.com/w/cpp/container/forward_list
26
Shaffer PDF Book - Section 4.1http://people.cs.vt.edu/shaffer/Book/C++3elatest.pdf
27
28
Stacks and Queues
29
Using Stacks for LIFO operations
http://www.lynda.com/Developer-Programming-Foundations-tutorials/Using-stacks-last-first-out/149042/177120-4.html?org=smu.edu
30
ADTs
http://www.lynda.com/Developer-Programming-Foundations-tutorials/Foundations-Programming-Data-Structures/149042-2.html?org=smu.edu
31
Queue for FIFO operations
http://www.lynda.com/Developer-Programming-Foundations-tutorials/Foundations-Programming-Data-Structures/149042-2.html?org=smu.edu
32
Applications of Stacks and Queues
https://www.cs.cmu.edu/~adamchik/15-121/lectures/Stacks%20and%20Queues/Stacks%20and%20Queues.html
33
std::deque (double-ended queue)http://en.cppreference.com/w/cpp/container/deque
34
std::queuehttp://en.cppreference.com/w/cpp/container/queue
35
Shaffer PDF Book - Section 4.2 and 4.3http://people.cs.vt.edu/shaffer/Book/C++3elatest.pdf
36
37
Trees, Binary Trees, Binary Search Trees
38
Tree Data Structure Concepts
http://www.lynda.com/Developer-Programming-Foundations-tutorials/Foundations-Programming-Data-Structures/149042-2.html?org=smu.edu
39
Binary Search Trees
http://www.lynda.com/Developer-Programming-Foundations-tutorials/Foundations-Programming-Data-Structures/149042-2.html?org=smu.edu
40
Constructing a Binary Treehttps://www.youtube.com/watch?v=FvdPo8PBQtc
41
Tree Traversal: Preorderhttps://youtu.be/WmkbxTWCSoc
42
Tree Traversal: Postorderhttps://youtu.be/mRC0i4gPsbw
43
Tree Traversal: InOrder (and others)https://youtu.be/OVUmbBvyvVw?t=4m51s
44
Searching a BSThttps://youtu.be/8Z4AuXoutjk
45
Binary Trees in Shaffer PDF Chapter 5, Sections 1, 2, 3, & 4http://people.cs.vt.edu/~shaffer/Book/C++3elatest.pdf
46
47
Balanced Bin Search Tree - The AVL Tree
48
AVL Tree Concepts Option 1https://www.youtube.com/watch?v=PmLqB2NJJpc
49
AVL Tree Concepts Option 2 (Longer, more detailed from MIT Open CourseWare - Prof. Demaine)https://www.youtube.com/watch?v=FNeL18KsWPc
50
AVL Tree Visualizationhttps://www.cs.usfca.edu/~galles/visualization/AVLtree.html
51
CMU Lecture Notes on AVL Treeshttp://www.cs.cmu.edu/~fp/courses/15122-s11/lectures/18-avl.pdf
52
Shaffer PDF Book on AVL Tree - Section 13.2.1http://people.cs.vt.edu/shaffer/Book/C++3elatest.pdf
53
54
Maps/HashTables
55
Associative Array (another name for HashTable) Intro
http://www.lynda.com/Developer-Programming-Foundations-tutorials/Foundations-Programming-Data-Structures/149042-2.html?org=smu.edu
56
Hash Functions
http://www.lynda.com/Developer-Programming-Foundations-tutorials/Foundations-Programming-Data-Structures/149042-2.html?org=smu.edu
57
Hash Tableshttps://youtu.be/h2d9b_nEzoA
58
Using the Right Data Structure for the Job (uses hash table to explain another topic, but a great, somewhat advanced article)http://rohankshir.github.io/2015/05/15/choosing-the-right-datastructure/
59
Benchmarks of several Hash Table Implementations (including Google's dense_hash_map)http://incise.org/hash-table-benchmarks.html
60
Hashing and Hash Tables (fairly advanced).
http://compsci.hunter.cuny.edu/~sweiss/course_materials/csci335/lecture_notes/chapter05.pdf
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100