listsrecursionstacksqueues we have seen how arrays are convenient way to store collections of itemsand how loops and iteration allow us to sequentially process those items howeverarrays are not always the most efficient way to store collections of items in this sectionwe shall see that lists may be better way to store collections of itemsand how recursion may be used to process them as we explore the details of storing collections as liststhe advantages and disadvantages of doing so for different situations will become apparent linked lists list can involve virtually anythingfor examplea list of integers [ ] shopping list [applesbutterbreadcheese]or list of web pages each containing picture and link to the next web page when considering listswe can speak about-them on different levels on very abstract level (on which we can define what we mean by list)on level on which we can depict lists and communicate as humans about themon level on which computers can communicateor on machine level in which they can be implemented graphical representation non-empty lists can be represented by two-cellsin each of which the first cell contains pointer to list element and the second cell contains pointer to either the empty list or another two-cell we can depict pointer to the empty list by diagonal bar or cross through the cell for instancethe list [ can be represented as abstract data type "liston an abstract level list can be constructed by the two constructorsemptylistwhich gives you the empty listand