java笛卡尔积算法怎么实现

avatar
作者
筋斗云
阅读量:8

Java中可以使用两层循环来实现笛卡尔积算法。

假设有两个集合A和B,笛卡尔积就是将A中的每个元素与B中的每个元素进行组合,得到一个新的集合。

以下是实现笛卡尔积算法的Java代码示例:

import java.util.ArrayList; import java.util.List;  public class CartesianProduct {     public static void main(String[] args) {         List<Integer> setA = new ArrayList<>();         setA.add(1);         setA.add(2);          List<Character> setB = new ArrayList<>();         setB.add('a');         setB.add('b');                  List<String> cartesianProduct = getCartesianProduct(setA, setB);         System.out.println(cartesianProduct);     }      public static List<String> getCartesianProduct(List<Integer> setA, List<Character> setB) {         List<String> cartesianProduct = new ArrayList<>();          for (Integer elementA : setA) {             for (Character elementB : setB) {                 String product = elementA.toString() + elementB.toString();                 cartesianProduct.add(product);             }         }          return cartesianProduct;     } } 

在上述示例中,我们定义了两个集合setA和setB,分别包含了整数和字符。通过调用getCartesianProduct()方法,传入这两个集合,即可得到它们的笛卡尔积。

输出结果为:[1a, 1b, 2a, 2b],即为集合setA和setB的笛卡尔积。

广告一刻

为您即时展示最新活动产品广告消息,让您随时掌握产品活动新动态!