Could be the crank sensor as well. My sister's Saturn had one become intermittent. Seems like it would not start at all in very cold weather, sometimes. It was really frustrating since they do not generate a code since if it has no output the computer assumes that the engine is not running. They are pretty cheap as well if I remember correctly.
Oxygen sensor usually just make it run poorly, like really rich and very bad gas mileage. The computer will have a code for a bad O2 sensor. Failing fuel pumps loose pressure, and may need to crank the engine for an extended period of time to start. Also it may hesitate or die during acceleration. Usually they test them by measuring the pressure that they pump. If you suspect the fuel pump and have it tested you may as well have the fuel filter replaced at the same time.