How does ES decide to allocate shards on recovery?

Running 1.6.0

So I have a 4 node cluster and single index of 4 shards + 1 replica and the usual marvel indexes.

I shutdown 1 node just for the hell of it (pretend it was a crash). ES made the replica shards as primaries all fine and dandy...
Then I restarted the downed node and ES decided to copy all replicas from the other nodes to the node that came back up and finally re balanced some of those replicas back to the other nodes.Isn't that just wasteful?