DEV Community

Discussion on: Doubly Linked Lists

 
joelbonetr profile image
JoelBonetR 🥇 • Edited

getLast / getTail has the same utility than getFirst / getHead, you can implement it or not, just depends on the need of getting some specific position, no matter the index being first, last, in the middle or in any other arbitrary position.
If for any reason you need to check the second element multiple times then sure, go and implement a getSecond. Or simply implement a search method and ask for the second one, which will be the same.

Is a non sense to argue about that since we are not talking about a specific use case. On the other hand, being a double linked list has nothing to do with the utility of those hypothetical methods. Again, they only have no sense when talking about circular lists, which is not the case.

Just to clarify, a circular doubly linked list is the same than a doubly linked list but the head and the tail are considered as prev/next between them (so you'll always have a "next" or a "prev" item as there's no end, thus there are no start point and you need to consider the number of items to avoid infinite looping.
You can learn more about here: humanwhocodes.com/blog/2019/03/com....

Best regards