For a transportation line without branches, passenger service scheduling is mainly concerned with the determination of stop schedules for planned service trips. A mixed-integer programming method is proposed to maximize customer satisfaction by minimizing the total number of in-vehicle passengers during trips. A heuristic algorithm is proposed for a given number of service trips, in which the error bound of the heuristic is restricted by the number of stations. When the given number of service trips is sufficient to provide express services for all origin–destination pairs, the heuristic provides an optimal solution. However, the error bound of the heuristic approaches infinity as the number of stations increases. A fully polynomial time-approximation algorithm is proposed, where the number of service trips is a decision variable. Finally, the proposed algorithm was applied to the stop-schedule problem of a river bus operating along the Han River in Seoul, Korea.