If you want to add more operations, it might be useful to have pointers both directions. For example, you might want to have an operation that takes a pointer to a given cell and inserts a new cell just before that cell. A doubly-linked list allows you to do that efficiently.