Over 560,000 people voted BNP, and yet they get no seats in Parliament.
Over 917,000 people voted UKIP, and yet they get no seats in Parliament.
Meanwhile
168,000 voted Democratic Unionist Party, and they get eight seats
490,000 voted Scottish National Party, and they get six seats.
171,000 voted Sinn Fein, and they get five.
165,000 voted Plaid Cymru, and they get three.
42,000 voted Alliance Party (Northern Ireland), and they get one.
And, to be fair to the Lib Dems, I should mention how they did in comparison to the other Big Two.
Conservatives: Received approx 10.7 million votes, won 306 seats
Labour: Received approx 8.6 million votes, won 258 seats
LidDems; Received approx 6.8 million votes, won 57 seats
http://news.bbc.co.uk/1/shared/election2010/results/
Both Labour and Conservative have their votes/support concentrated in specific areas whereas the Lib Dems are much more spread out which is why Lab and Conservative got so many more seats. It also explains why the Green Party gained a seat although overall they had less votes than the BNP and UKIP.
Plus I think that the Lib Dems will agree to a power-sharing agreement with one of the two main parties if they agree to an alternative voting system which of course Labour and Conservative will not agree to as it will mean that the Lib Dems will get a lot more seats because the Lib Dems are usually people's second choice if they vote Conservative or Labour. If a coalition is formed the the larger party will simply string the Lib Dems along until they gain the majority. This is just my opinion though.