SKILL BENCHMARK

# Python Data Structures Proficiency (Advanced Level)

• 15m
• 15 questions
The Python Data Structures Proficiency (Advanced Level) benchmark measures your knowledge of the properties of trees and graphs and the theory behind implementing these data structures in code. You will be evaluated on your skills in defining trees and graphs in Python 3 and coding traversal algorithms for these data structures. A learner who scores high on this benchmark demonstrates that they have the skills to work with graphs and trees in Python.

## Topics covered

• build a graph represented as an adjacency set and test out the functions defined to work with it
• code a function to perform a breadth first traversal of a graph
• code functions to perform pre-order, in-order, and post-order traversals of a BST
• create functions to perform common BST operations such as lookup and finding the minimum and maximum values
• Data Structures & Algorithms in Python: Implementing Trees and Graphs in Python it_pydsapdj_06_enus_02 Implementing a Binary Search code a function to perform a binary search on a sorted array of elements
• define a class to represent a graph in the form of an adjacency matrix
• define an abstract base class for a graph implementation and a vertex class with an adjacency set
• identify the minimum and maximum values in a BST, identify the greatest depth of the data structure, and calculate the sum of values from the root to a leaf node
• implement a topological sort of a directed acyclic graph
• recognize what trees and binary trees are and recall the properties of a binary search tree
• summarize how insert and lookup operations occur in a BST
• summarize the pre-order and in-order depth first traversal techniques for a BST
• traverse over the nodes in a graph using the topological sort algorithm
• write a function to perform a breadth first traversal of a BST
• write a function to traverse a graph in a depth first manner