abstract data types there are many common data structuresincluding arrayslinked listsstacksqueuesand treesto name few all data structures store collection of valuesbut differ in how they organize the individual data items and by what operations can be applied to manage the collection the choice of particular data structure depends on the adt and the problem at hand some data structures are better suited to particular problems for examplethe queue structure is perfect for implementing printer queuewhile the -tree is the better choice for database index no matter which data structure we use to implement an adtby keeping the implementation separate from the definitionwe can use an abstract data type within our program and later change to different implementationas neededwithout having to modify our existing code general definitions there are many different terms used in computer science some of these can have different meanings among the various textbooks and programming languages to aide the reader and to avoid confusionwe define some of the common terms we will be using throughout the text collection is group of values with no implied organization or relationship between the individual values sometimes we may restrict the elements to specific data type such as collection of integers or floating-point values container is any data structure or abstract data type that stores and organizes collection the individual values of the collection are known as elements of the container and container with no elements is said to be empty the organization or arrangement of the elements can vary from one container to the next as can the operations available for accessing the elements python provides number of built-in containerswhich include stringstupleslistsdictionariesand sets sequence is container in which the elements are arranged in linear order from front to backwith each element accessible by position throughout the textwe assume that access to the individual elements based on their position within the linear order is provided using the subscript operator python provides two immutable sequencesstrings and tuplesand one mutable sequencethe list in the next we introduce the array structurewhich is also commonly used mutable sequence sorted sequence is one in which the position of the elements is based on prescribed relationship between each element and its successor for examplewe can create sorted sequence of integers in which the elements are arranged in ascending or increasing order from smallest to largest value in computer sciencethe term list is commonly used to refer to any collection with linear ordering the ordering is such that every element in the collectionexcept the first onehas unique predecessor and every elementexcept the last onehas unique successor by this definitiona sequence is listbut list is not necessarily sequence since there is no requirement that list provide access to the elements by position pythonunfortunatelyuses the same name for its built-in mutable sequence typewhich in other languages would be called an array