2-10 集合划分问题(Bell数)
问题描述
n个元素的集合{1,2,…,n}可以划分若干个非空子集。例如,当n=4时,集合{1,2,3,4}可以划分为15个不同的非空子集如下:
{
{1},{2},{3},{4}},
{
{1,2},{3},{4}},
{
{1,3},{2},{4}},
{
{1,4},{2},{3}},
{
{2,3},{1},{4}},
{
{2,4},{1},{3}},
{
{3,4},{1},{2}},
{
{1,2},{3,4}},
{
{1,3},{2,4}},
{
{1,4},{2,3}},
{
{1,2,3},{4}},
{
{1,2,4},{3}},
{
{1,3,4},{2}},
{
{2,3,4},{1}},
{
{1,2,3,4}}
给定正整数n(1<=n<=20),计算出n个元素的集合{1,2,…,n} 可以化为多少个不同的非空子集。
数学知识
Bell数的定义:第n个Bell数表示集合{1,2,3,…,n}的划分方案数,B(0)=1;
B(n)=∑n−1i=0(n−1i)B(i) B ( n ) = ∑