火车票的分段卖票的方式设计原理

浏览:2990 发布日期:2013/08/16 分类:技术分享
原文地址:http://www.thinkphp.cn/topic/4579.html
其中有一段这样的构思:
E)想想火车票的分段卖票的方式,现有的解决方案是为每个站点预留票,于是我们可以看到火车始发时,有很多空坐,这些空坐都是留给下一个站点的,我们能否开发出一个系统来,可以把一条线上的这些这站上那站下的旅客统筹规划一下,制定出一个最经济的方式,让火车运行得更有效。
我之前有想过火车票出票对互联网新手不公平的解决办法,现在我们来构思火车票分段购票的经济原理。//假设该列车一共有5个站点,1000个座位
//线路为:上海 - 昆山 - 苏州 - 无锡 - 南京
/**关键思路:
 * 根据站台进行排列组合,我们可以得到以下思路
 * ①:上海 - 昆山余票 : 1000张
 *    上海 - 苏州余票 : 1000张
 *    上海 - 无锡余票 : 1000张
 *    上海 - 南京余票 : 1000张
 * ②:昆山 - 苏州余票 : 1000张
 *    昆山 - 无锡余票 : 1000张
 *    昆山 - 南京余票 : 1000张
 * ③:苏州 - 无锡余票 : 1000张
 *    苏州 - 南京余票 : 1000张
 * ④:无锡 - 南京余票 : 1000张
* 假设某人买了一张从 上海 - 昆山的票,那么各站余票为:/**
 * ①:上海 - 昆山余票 : 999张
 *    上海 - 苏州余票 : 999张
 *    上海 - 无锡余票 : 999张
 *    上海 - 南京余票 : 999张
 * ②:昆山 - 苏州余票 : 1000张
 *    昆山 - 无锡余票 : 1000张
 *    昆山 - 南京余票 : 1000张
 * ③:苏州 - 无锡余票 : 1000张
 *    苏州 - 南京余票 : 1000张
 * ④:无锡 - 南京余票 : 1000张
* 假设又有某人买了一张从 上海 - 南京的票,那么各站余票为:/**
 * ①:上海 - 昆山余票 : 998张
 *    上海 - 苏州余票 : 998张
 *    上海 - 无锡余票 : 998张
 *    上海 - 南京余票 : 998张
 * ②:昆山 - 苏州余票 : 999张
 *    昆山 - 无锡余票 : 999张
 *    昆山 - 南京余票 : 999张
 * ③:苏州 - 无锡余票 : 999张
 *    苏州 - 南京余票 : 999张
 * ④:无锡 - 南京余票 : 999张
* 假设又有999人买了一张从 苏州 - 南京的票,那么各站余票为:/**
 * ①:上海 - 昆山余票 : 998张
 *    上海 - 苏州余票 : 998张
 *    上海 - 无锡余票 : 0张
 *    上海 - 南京余票 : 0张
 * ②:昆山 - 苏州余票 : 999张
 *    昆山 - 无锡余票 : 0张
 *    昆山 - 南京余票 : 0张
 * ③:苏州 - 无锡余票 : 0张
 *    苏州 - 南京余票 : 0张
 * ④:无锡 - 南京余票 : 0张
 * 假设此时又来一人要买一张从 上海 - 无锡的票,系统将提示无票
 * 但是又来一人要买一张从 上海-苏州的票,系统将提示余票998张
 * 以此类推
 * ……
 */
这样是不是就解决了火车票的分段卖票的方式呢?并且淘汰掉以前的为每个站点预留票的方式。

代码暂时不上,先只留个思路。
求批评,求意见。
最佳答案
评论( 相关
后面还有条评论,点击查看>>