算法
shirdonl
高级软件架构师,全栈开发者,技术极客,Gopher,开源爱好者。毕业于河海大学,先后就职于苏宁易购等多家大型公司。多年软件开发与团队管理经验,精通Java、JavaScript、C/C++/C#、Python、PHP等开发语言。对Go语言、Rust语言等流行开发语言有深入实践和研究。对大型电子商务系统开发、高并发架构、分布式架构、微服务、大数据、人工智能算法等领域有深入实践和研究。
作者博客:https://www.shirdon.com
码云地址:https://gitee.com/shirdonl
GitHub:https://github.com/shirdonl
展开
-
订单拆单-产品逻辑分析研究
拆单在电商订单中很常见,也比较复杂。拆单也有两次,一次是在用户提交订单之后、支付之前拆单,这次是拆分的订单;另一次是在用户下单之后,商家发货之前,去拆分发货单(SKU层面)。两次拆单的原则不同,第一次拆单是为了区分平台商家、方便财务结算,第二次拆单是为了按照最后的发货包裹进行拆单,如不同仓库、不同运输要求的SKU、包裹重量体积限制等因素(第二次拆单的有些步骤也可以放在第一步)。需要注意的是...原创 2019-11-26 11:33:07 · 3301 阅读 · 0 评论 -
库存管理-多个仓库库存扣减-简单算法
概述在做电商项目的时候,会涉及到库存扣减的问题,稍微复杂的情况是,多仓库库存扣减,比如说:仓库warehouse1有4件商品,warehouse2有3件商品,这个时候用户需要买7件商品,这样无论哪个仓库都不够扣减,这种情况下,会使用多仓库库存扣减的逻辑,warehouse1和warehouse2两个仓库的库存之和是3+4=7,是足够扣减6件的。简单代码public class S...原创 2019-11-26 11:27:59 · 2793 阅读 · 0 评论 -
go语言冒泡排序算法(bubble sort with go)
package mainimport (“fmt”)func main() {arr := []int{1,2,3}fmt.Println("[UNSORTED]: ", arr)n := len(arr)// 遍历所有元素for i := 0; i < n-1; i++ { for j := 0; j < n-i-1; j++ { // 左元素 > ...原创 2018-11-24 12:17:03 · 206 阅读 · 0 评论 -
golang支付合集(包括微信支付,支付宝,后期会加入聚合支付)
golang支付库 想必gopher们都会抱怨go成熟的包太少,特别是go语言支付这块,网上的代码基本没有能用的,要么不全,要么有硬伤,所以结合网上和自己经验,抽出时间写的一部分代码,封装下分享出来,希望能给大家一点借鉴意义。喜欢的朋友们,帮忙点个star,fork!谢谢! 支持的支付方式 目前支持微信app,支付宝网页版,支付宝app。要是谁有新的支付方式也可以合并。 项...原创 2019-08-15 09:19:47 · 2299 阅读 · 0 评论