Course topics 8 and 9¶
Self-study¶
The topics for this week are (i) Graphs and Trees, (ii) Tree data structures and traversals and (iii) Invalidation in containers
The following links will take you to the video-lectures and the accompanying slides:
Graphs and Trees¶
Tree data structures and traversals¶
Invalidation in containers¶
Trees¶
Tree data structures and traversals¶
Submit weekly exercises¶
Topic 8 of the course¶
Self-study¶
The topics for this week are the following: (i) Amortized performance and std::vector (ii) Verifying asymptotic performance (iii) Tips for increasing actual performance and (iv) Randomization
The following links will take you to the video-lectures and the accompanying slides:
Amortized performance and std::vector¶
Verifying asymptotic performance¶
Tips for increasing actual performance¶
Amortized performance and std::vector¶
Verifying asymptotic performance¶
Tips for increasing actual performance¶
Randomization¶
Extra links on the topic:
There is no shortage of opinions on how to improve the efficiency of C++ code. Here is one link and a warning. Some of information is quite technical. -A long discussion in stackoverflow:
Homework to be returned for these topics¶
Course 9 topics¶
Self-study¶
The topics for this week are (i) The heap data structure, (ii) Implementing a heap as an array
The following links will take you to the video-lectures and the accompanying slides:
The heap data structure¶
Implementing a heap as an array¶
Heap and heap operations¶
A Heap as an array¶
Extra links on the topic:
Typically a priority queue is implemented as a binary tree heap. An alternative data structure that can be used for a priority queue is a binomial tree heap