United Airlines has apologised to a passenger who had to sit with her toddler on her lap for more than three hours after the airline gave her child's seat away to a standby customer.

Shirley Yamauchi, 27, had bought a $1,000 ticket for her son Taizo for the flight from Houston to Boston on June 29, the final leg of an 18-hour journey from Hawaii.

They were in their seats waiting for take-off when a man arrived, saying Taizo was in his seat.

"I told him that I bought both of these tickets and he tells me that he got the ticket on standby. Then he proceeds to sit in the center,” Ms Yamauchi told Hawaii News Now.

She said she told a flight attendant, who shrugged and said the flight was full before walking away.