tnblog
首页
视频
资源
登录

笛卡尔积

2030人阅读 2022/3/8 12:00 总访问:2030 评论:0 收藏:0 手机
分类: Zh

从事电商开发后,涉及到关系SKU的算法

1、SKU是指一款商品,每款都有出现一个SKU,便于电商品牌识别商品。

2、一款商品多色,则是有多个SKU,例:一件衣服,有红色、白色、蓝色,则SKU编码也不相同,如相同则会出现混淆,发错货。


SKU数量取决于产品规格数量的积(比如:颜色数量*尺码数量)

案例:
Color:Blue、Black
Size:S、M

思路:最后一层输出结果,否则递归

话不多说,直接上代码

public void CartesianProduct(
    List<List<string>> arr,
   List<List<string>> result,
   int level, List<string> vals)
{
    var currents = arr[level];

    foreach (var curr in currents)
    {
        if (level + 1 < arr.Count)
            CartesianProduct(arr, result, level + 1, new List<string>(vals) { curr });
        else
            result.Add(new List<string>(vals) { curr });
    }
}


结果如下:
[["Black","S"],["Black","M"],["Blue","S"],["Blue","M"]]

评价
这是个性签名
排名
6
文章
6
粉丝
16
评论
8
{{item.articleTitle}}
{{item.blogName}} : {{item.content}}
ICP备案 :渝ICP备18016597号-1
网站信息:2018-2022TNBLOG.NET
技术交流:群号677373950
联系我们:contact@tnblog.net
欢迎加群交流技术