in the most general sensea data structure is any data representation and its associated operations even an integer or floating point number stored on the computer can be viewed as simple data structure more typicallya data structure is meant to be an organization or structuring for collection of data items sorted list of integers stored in an array is an example of such structuring given sufficient space to store collection of data itemsit is always possible to search for specified items within the collectionprint or otherwise process the data items in any desired orderor modify the value of any particular data item thusit is possible to perform all necessary operations on any data structure howeverusing the proper data structure can make the difference between program running in few seconds and one requiring many days solution is said to be efficient if it solves the problem within the required resource constraints examples of resource constraints include the total space available to store the data -possibly divided into separate main memory and disk space constraints -and the time allowed to perform each subtask solution is sometimes said to be efficient if it requires fewer resources than known alternativesregardless of whether it meets any particular requirements the cost of solution is the amount of resources that the solution consumes most oftencost is measured in terms of one key resource such as timewith the implied assumption that the solution meets the other resource constraints it should go without saying that people write programs to solve problems howeverit is crucial to keep this truism in mind when selecting data structure to solve particular problem only by first analyzing the problem to determine the performance goals that must be achieved can there be any hope of selecting the right data structure for the job poor program designers ignore this analysis step and apply data structure that they are familiar with but which is inappropriate to the problem the result is typically slow program converselythere is no sense in adopting complex representation to "improvea program that can meet its performance goals when implemented using simpler design when selecting data structure to solve problemyou should follow these steps analyze your problem to determine the basic operations that must be supported examples of basic operations include inserting data item into the data structuredeleting data item from the data structureand finding specified data item quantify the resource constraints for each operation select the data structure that best meets these requirements