笛卡爾積定義,多個集合計算笛卡爾積-Python

 2023-10-15 阅读 24 评论 0

摘要:什么是笛卡爾積? 引用百度百科的解釋:笛卡爾乘積是指在數學中,兩個集合X和Y的笛卡尓積(Cartesian product),又稱直積,表示為X Y,第一個對象是X的成員而第二個對象是Y的所有可能有序對的其中一個成員。 例如:

什么是笛卡爾積?

引用百度百科的解釋:笛卡爾乘積是指在數學中,兩個集合X和Y的笛卡尓積(Cartesian product),又稱直積,表示為X × Y,第一個對象是X的成員而第二個對象是Y的所有可能有序對的其中一個成員。

例如:集合A={1,2},集合B={3,4},AB集合的笛卡爾積={13,14,23,24}

兩個集合的笛卡爾積

笛卡爾積定義?兩個集合的笛卡爾積比較好計算,兩個for循環搞定,代碼如下:

def two(list1, list2):res_list = []for str1 in list1:for str2 in list2:res_list.append(str1 + ' ' + str2)return res_list

多個集合的笛卡爾積

例如,已知集合A, B, C

計算笛卡爾積:先計算AB的笛卡爾積,AB的笛卡爾積是一個集合設為D,那么ABC的笛卡爾積其實就是D和C的笛卡爾積,N個集合的計算方式同理。

冪集的笛卡爾積,以下代碼為多個集合的笛卡爾積:

#coding-=utf-8list1 = ['1', ''''2']
list2 = ['4', '5']
list3 = ['7', '8']
list4 = ['9', '0']
list_of_list = [list1, list2, list3, list4]def two(list1, list2):res_list = []for str1 in list1:for str2 in list2:res_list.append(str1 + ' ' + str2)return res_listdef process(list_of_list):res_list = []list1 = list_of_list[0]for tmp_list in list_of_list[1:]:list2 = tmp_listtwo_res_list = two(list1, list2)list1 = two_res_listreturn list1print process(list_of_list)

轉載于:https://www.cnblogs.com/zhangkl/p/8604449.html

版权声明:本站所有资料均为网友推荐收集整理而来,仅供学习和研究交流使用。

原文链接:https://hbdhgg.com/1/138801.html

发表评论:

本站为非赢利网站,部分文章来源或改编自互联网及其他公众平台,主要目的在于分享信息,版权归原作者所有,内容仅供读者参考,如有侵权请联系我们删除!

Copyright © 2022 匯編語言學習筆記 Inc. 保留所有权利。

底部版权信息