I'm trying to understand a behavior of navigating between ViewControllers with (and without) using a NavigationController and I'm misunderstanding some things while reading articles and docs so I decided to ask them.

**Main question is:** What happened if we have multiple NavigationControllers in Storyboard and want to go from one to another? *(And this can be achieved just using segues as we do between common VCs, am I right?)*

As I understand, a NavigationController represents a stack of ViewControllers within which we can pop and push these VCs. So now we change our "location" from VCs of the first NavigationController to VCs from the second one, what happens next? The first stack disappeared and now we work only within the second one? If so, does it means that the VCs stack of the first NavigationController was deleted from memory or not?

Maybe I completely misunderstand something or maybe not:). I will be happy to see your responses and hope to ask you more detail questions about navigation mechanics.

**UPDATE**

The point is that: Let's say we have one (initial) VC with two buttons that represent two separate parts of the app. Next we click on the first button and go to RootVC of one NC than we go back to our initial VC hit the second button and go to the another NC. What happened with the stack of the first NC when we go back to the initial VC and what is the best way to go "outside" NC to the initial VC?

**UPDATE**

I'm trying to understand what happens with the memory and which VCs are in the scene at the moment and so on. Maybe it absolutely unimportant if we have some additional VCs in the scene, maybe we do need them to make switching between NCs (or just VCs) faster. So I want just understand how it actually works.