举个场景
a用户今天花了2块钱买了100瓶水;行情现在是2快钱;然后挂单:等行情涨到2.5块钱卖掉100瓶。a等着人来买就行了
-
B用户:现在行情假设3块钱;然后挂单2.5块买50瓶。
立即学习“PHP免费学习笔记(深入)”;
Shopxp网上购物系统下载Shopxp购物系统历经多年的考验,并在推出shopxp免费购物系统下载之后,收到用户反馈的各种安全、漏洞、BUG、使用问题进行多次修补,已经从成熟迈向经典,再好的系统也会有问题,在完善的系统也从在安全漏洞,该系统完全开源可编辑,当您下载这套商城系统之后,可以结合自身的技术情况,进行开发完善,当然您如果有更好的建议可从官方网站提交给我们。Shopxp网上购物系统完整可用,无任何收费项目。该系统经过
问题
PHP使用队列如何实现B用户自动买了A用户的50瓶。B的交易完成。A的交易因为还没卖完,还继续挂单;如何实现N用户的这种交易。
说明
上面的例子理解成股票挂单就好理解了。
回复内容:
举个场景
a用户今天花了2块钱买了100瓶水;行情现在是2快钱;然后挂单:等行情涨到2.5块钱卖掉100瓶。a等着人来买就行了
-
B用户:现在行情假设3块钱;然后挂单2.5块买50瓶。
立即学习“PHP免费学习笔记(深入)”;
问题
PHP使用队列如何实现B用户自动买了A用户的50瓶。B的交易完成。A的交易因为还没卖完,还继续挂单;如何实现N用户的这种交易。
说明
上面的例子理解成股票挂单就好理解了。
这个问题跟语言没有关系。
需要两个队列,一个用来存储“买进”,一个用来存储“卖出”,队列中按照价格排序,相同价格按照时间排序。
然后程序不断的对比买进的最高价和卖出的最低价,如果两者有重叠则进行交易,交易价格按卖出价计算。










