So this fills all elements if pulseWidths with the same value. I guess that you want to store the pulseWidth in an element of the array when you have done the reading / calculation. So in here
if (sensorSignal > 1800 && start1 == 3) //reads that the sensor has gone high and records the time (PART 1 ON DIAGRAM 1.)
{
start1 = 1;
endTime = micros() * 0.01;
spaceLength = endTime - midTime;
period = endTime - lowTime;
pulseWidth = period - spaceLength;
}