For Amsterdam, one other option to consider is
Train + Overnight Ferry + Train. You leave London something like 7pm, and get into Amsterdam for about 10am, having had a decent night's sleep and not having had to pay for a hotel. Given hotel prices in both London and Amsterdam, that can work out a decent saving!