Is it necessary to delete previously generated objects in random level generation?

I am making a game in which the the level randomly generates new objects in the scene as the player moves forward.

So is it necessary to delete/destroy the previously generated objects as the player moves forward?

Will it improve memory usage?

Thanks in advance.

Yes, and yes.