P0300 is a misfire code. Is your car misfiring?
P0171 is a lean condition. If you have a scan tool which will give you
data, it will be very helpful. A misfire due to an injector not firing
could be causing this code. If you have a V6, you can use the scan tool
to compare fuel trims one one bank with the other. If the fuel trim
values are out of whack similarly on both banks, you're probably looking
at an air flow sensor issue. The oxygen sensor is still a possibility,
but there needs to be some investigation to determine the actual cause.
P0115 relates to the coolant temp sensor. While the sensor is the culprit
in most cases, this code can also be caused by a faulty thermostat (stuck
closed or open) or any other issue that would make the car overheat.