sets and maps in the previous we studied several complex abstract data types that required the use of data structure for their implementation in this we continue exploring abstract data types with focus on several common containers two of these are provided by python as part of the language itselfsets and dictionaries neverthelessit' still important to understand how they work and some of the common ways in which they are implemented your experience in programming will likely not be limited to the python language at some point in the futureyou may use one if not several other common programming languages while some of these do provide wide range of abstract data types as part of the language itself or included in their standard libraryotherslike cdo not thusit' important that you know how to implement set or dictionary adt if necessarywhen one is not available as part of the language furtherboth the set and dictionary types provide excellent examples of abstract data types that can be implemented using different data structures as you learned in there may be multiple data structures and ways to organize the data in those structures that are suitable for implementing an abstract data type thusit' not uncommon for language libraries to provide multiple implementations of an abstract data typewhich allows the programmer to choose the best option for given problem your ability to choose from among these various implementations will depend not only on your knowledge of the abstract data type itselfbut also on understanding the pros and cons of the various implementations sets the set adt is common container used in computer science but unlike the bag adt introduced in set stores unique values and represents the same structure found in mathematics it is commonly used when you need to store collection of unique values without regard to how they are stored or when you need to perform various mathematical set operations on collections