Summary
Add a doubly linked list implementation to src/data_structures.
Requirements
- Support creating an empty list.
- Support inserting values at the head and tail.
- Support inserting at a specific index when valid.
- Support removing values from the head, tail, and arbitrary positions.
- Support searching for a value and checking whether it exists.
- Support traversing the list in both forward and reverse directions.
- Support returning the list length and empty-state checks.
- Handle invalid index operations consistently and document the behavior.
Testing
Add tests for:
- empty list behavior
- insertion at head/tail
- insertion by index
- removal from head/tail
- removal by value or index
- forward and reverse traversal
- search and existence checks
- invalid operations
Documentation
Document the public API and include a short usage example consistent with the repository’s existing data structure modules.
Summary
Add a doubly linked list implementation to
src/data_structures.Requirements
Testing
Add tests for:
Documentation
Document the public API and include a short usage example consistent with the repository’s existing data structure modules.