ToggleNow interview question

1. What's the difference between batch gradient descent and stochastic gradient descent. Explain the pro and cons. How mini-batch gradient descent is different from the both.