To execute any algorithm, selection of a proper data structure is very crucial. A particular operation may be executed with a data structure in a smaller time but it may have a very large time in some other data structure. For instance, to access ith element in a set may need constant time if we are using arrays but the necessary time becomes a polynomial in case of a linked list. Thus, the selection of data structure must be done keeping in mind the type of operation to be performed and the architecture available. In this section, we shall introduce some data structures commonly used in a parallel programming.