From 02806f7efa2f728258185705b774bf1f14bcb381 Mon Sep 17 00:00:00 2001 From: Oleksii Trekhleb Date: Mon, 2 Apr 2018 09:05:17 +0300 Subject: [PATCH] Add cartesian product algorithm. --- assets/cartesian-product.png | Bin 0 -> 30071 bytes src/algorithms/math/cartesian-product/README.md | 4 +++- 2 files changed, 3 insertions(+), 1 deletion(-) create mode 100644 assets/cartesian-product.png diff --git a/assets/cartesian-product.png b/assets/cartesian-product.png new file mode 100644 index 0000000000000000000000000000000000000000..f659c63126a8c08785ce9adc03b12fe1e0d74693 GIT binary patch literal 30071 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 HW