Do you bank with a clearing bank (NatWest, Barclays, HSBC, LLoyds?) if so then it should take 4 working days. The first day the cheque is with the branch you paid it in at, the second day it is at 'clearing' (a national centre where all cheques are sent to be sorted to go to the bank and branch they were drawn on) then the third day the cheque is with the branch of the bank on which it is drawn. That bank do not have to authorise that it is okay for paying for another day. They can return it for a number of reasons (out of date, post dated, no payee, words and figures differ, not signed, not enough funds to pay cheque, cheque listed as lost or stolen etc etc etc), which makes the fourth day. If you do not bank with a clearing bank they have to pay all their things in through a clearing bank so that is why it will take longer.
Hope all that makes sense!