Explain how you would implement and reverse a singly linked list in a memory-constrained environment.