<P> An empty list is a list that contains no data records . This is usually the same as saying that it has zero nodes . If sentinel nodes are being used, the list is usually said to be empty when it has only sentinel nodes . </P> <P> The link fields need not be physically part of the nodes . If the data records are stored in an array and referenced by their indices, the link field may be stored in a separate array with the same indices as the data records . </P> <P> Since a reference to the first node gives access to the whole list, that reference is often called the' address',' pointer', or' handle' of the list . Algorithms that manipulate linked lists usually get such handles to the input lists and return the handles to the resulting lists . In fact, in the context of such algorithms, the word "list" often means "list handle". In some situations, however, it may be convenient to refer to a list by a handle that consists of two links, pointing to its first and last nodes . </P> <P> The alternatives listed above may be arbitrarily combined in almost every way, so one may have circular doubly linked lists without sentinels, circular singly linked lists with sentinels, etc . </P>

Compare and contrast circular linked list and doubly linked list