If you assume no air resistance,
v = u + at
s = ut + 1/2at^2
v is velocity, u is starting velocity, t is time, a is acceleration, s is distance.
So take your muzzle velocity u, make v = 0, remember that a is negative (bullet slowing down to v = 0) and get t=u/a. That's your time, going up, with no air resistance factored in.
Coming down, as others have said, the bullet will accellerate to terminal velocity (terminal velocity v = 0 + at (u=0 for this leg) and from that you can get time to terminal t=v/a). From there it's just the terminal velocity over the remaining distance.
Of course you first have to figure out what the distance up and down is, for that you use s = ut+1/2at^2 once you have the up time t.
But as others have said air resistance will make a difference. Basically it increases a (works with gravity). But it's non-linear, based on the velocity, which is decreasing all the time. Remember, bullets have a different BC depending on the velocity.
A complex issue, but using the above equations and sticking in the MV might give you some idea.
I read somewhere that bullets fired straight up come down base first, still rotating. This is because of two reasons, firstly that the rotational velocity of the bullet is much higher than the MV and secondly that air resistance doesn't act on the rotational velocity much.
But as others have said, firing straight up is difficult and the coriolis force will also bend the flight path a bit (depending on how high the bullet goes).
OK, I'll stop now