美文网首页
Java 代码获取笛卡尔积

Java 代码获取笛卡尔积

作者: 梅村_9643 | 来源:发表于2020-05-28 09:56 被阅读0次

做商城的时候涉及到商品的多个小时属性
比如 属性 1 颜色 属性值 1白色 2黑色
属性 2 内存 属性值 3 32G 4 64G
这样 获取的笛卡尔积为 白色 32G 白色 64G 黑色 32G 黑色 64G
对应 的数组 为 [1,3] [1,4] [2,3] [2,4]
实现方法为:

public class Descartes {
    public  static void descartes(List<List<Long>> dimvalue, List<List<Long>> result, int layer, List<Long> curList) {
        if (layer < dimvalue.size() - 1) {
            if (dimvalue.get(layer).size() == 0) {
                descartes(dimvalue, result, layer + 1, curList);
            } else {
                for (int i = 0; i < dimvalue.get(layer).size(); i++) {
                    List<Long> list = new ArrayList<Long>(curList);
                    list.add(dimvalue.get(layer).get(i));
                    descartes(dimvalue, result, layer + 1, list);
                }
            }
        } else if (layer == dimvalue.size() - 1) {
            if (dimvalue.get(layer).size() == 0) {
                result.add(curList);
            } else {
                for (int i = 0; i < dimvalue.get(layer).size(); i++) {
                    List<Long> list = new ArrayList<Long>(curList);
                    list.add(dimvalue.get(layer).get(i));
                    result.add(list);
                }
            }
        }
    }
}

相关文章

  • Java 代码获取笛卡尔积

    做商城的时候涉及到商品的多个小时属性比如 属性 1 颜色 属性值 1白色 2黑色属性 2 内存 属性...

  • 使用JAVA8新特性实现笛卡尔积

    以前实现笛卡尔积比较繁琐,使用java8的新特性提高了代码的简洁度,也更容易实现 运行结果

  • PHP获取索引数组的笛卡尔积

    需求【商品规格的笛卡尔积同理】:根据几项不同指标项中的不同指标,获取其相互组合的笛卡尔积,返回的是带有原数组索引的...

  • 三、连接查询

    内连接 1、笛卡尔积 语法 无条件筛选 有条件筛选 什么是笛卡尔积?笛卡尔积就是将A和B表中的行任意组合,得到一个...

  • 笛卡尔积

    笛卡尔积,是指集合A中元素与B中元素所有的两两组合。 如A=(a,b),B=(1,2),那么笛卡尔积为(a1,a2...

  • 笛卡尔积

    笛卡尔乘积:笛卡尔乘积是指在数学中,两个集合X和Y的笛卡尓积(Cartesian product),又称直积表示为...

  • 笛卡尔积

    之前写一个SKU的插件,用到了【笛卡尔积】,明白其原理,但是就是写不出来 看来功力尚浅,需要努力 后来借鉴了网上的...

  • 笛卡尔积

    1.什么笛卡尔积 百科:笛卡尔乘积是指在数学中,两个集合X和Y的笛卡尔积(Cartesian product),又...

  • 笛卡尔积

    Pandas如何实现相当于SQL交叉连接(笛卡尔积) https://www.cnpython.com/qa/14...

  • 笛卡尔积

    首先知道啥是笛卡尔积,百度百科中解释是这样的: 笛卡尔乘积是指在数学中,两个集合X和Y的笛卡尔积(Cartesia...

网友评论

      本文标题:Java 代码获取笛卡尔积

      本文链接:https://www.haomeiwen.com/subject/pqroahtx.html