After some searching I read this explanation in another forum:
"I think the characters jumping all over the map has got worse in the last couple of seasons and sometimes it does stretch the suspension of disbelief.
But I'm less inclined to moan about it these days, because it's going to happen regardless.
At least this time around they added in the Martell and Tyrell ships in Daenerys' fleet to specifically indicate that Varys had sailed back from Westeros with more ships and hadn't just "teleported".
Also, it would've taken weeks for Daenerys to prepare her armies and fleet for departure. Supplies, equipment, settling matters in Slaver's Bay... She didn't just shove tens of thousands of men and horses onto ships 5 minutes after the events of the previous episode.
Anybody watching the scene where her fleet is departing should already be expecting that weeks must have passed since previous episodes, due to the sheer practicality of assembling such a fleet."