My hot water plumbing runs in a single line from the water heater to the kitchen sink about 25 feet away. In the line are the downstairs bathroom, which has immediate hot water as it is right over the heater. The upstairs bathroom gets hot water in about six seconds and heats up quickly. The kitchen sink takes forever to get warm water and takes forever to fully heat.

I need to know if it is possible that the water in the lines going to the upstairs bathroom (there are two of them) could be leaching back and causing the water to the kitchen to take longer to heat. If so, would check valves solve the problem or is some kind of recirculation system the only solution short of moving the water heater?