登录
OEIS由OEIS基金会的许多慷慨捐赠者.

 

标志
提示
(来自的问候整数序列在线百科全书!)
A014486号 以10为基数写入的2n个二进制数字的完全平衡序列列表。每个项的二进制展开包含n个0和n个1,并且从左到右读取(从最高有效位到最低有效位),0的数量永远不会超过1的数量。 374

%I#206 2024年3月16日14:41:22

%S 0,2,10,12,42,44,50,52,56170172178180184202204210212216226,

%电话:228232240682684690696714716722724728738704752,

%电话:81081281882082484284485085285686688872880906908914

%N以10为基数写入的2n个二进制数字的完全平衡序列列表。每个项的二进制展开包含n个0和n个1,并且从左到右读取(从最高有效位到最低有效位),0的数量永远不会超过1的数量。

%C十进制表示的二进制动态语言(A063171)。

%C这些编码宽度为2n的山脉,n+1个顶点和n个边的有根平面树,n个节点的平面种植树,n+1片叶子的有根的平面二叉树(2n个边,2n+1个点,n个内部节点,包括根),Dyck单词,二进制括号,括号,非交叉握手和分区以及加泰罗尼亚语系中的许多其他组合结构,由A000108列举。

%C和{k=1..n}a(k))/n^(5/2)有界吗_Benoit Cloitre_,2002年8月18日

%C该列表是A061854和A031443的交叉点_Jason Kimberley,2013年1月18日

%C序列确实从n=0开始,因为在Dyck语言的二进制解释中(例如,括号中“1”代表“(”,“0”代表“)”),具有(0)=0就可以了,因为它代表的是空字符串,其中“0”和“1”是平衡的(因此括号是平衡的)_Daniel Forgues_,2013年2月17日

%C对于n>=1,这个序列可以通过连接第n行长度为A000108(n)的不规则数组的项来获得,该不规则数组由B(n,0)=A020988(n)和B(n、k)=B(n;k-1)+D(n,k-1)递归定义,其中D(x,y)=(2^(2*(A089309(B(x,y))-1)-1)*(2/3)+2^ A007814(B(x,y)))-_劳尔·马里奥·托雷斯·席尔瓦和米歇尔·马库斯,2020年5月1日

%C该编码与标准有序树编号的排名有关,因为(1)标准有序树的二进制编码由A358505给出,而(2)二进制编码有序树的标准排名由A358523给出_Gus Wiseman_,2022年11月21日

%D Donald E.Knuth,《计算机编程的艺术》,第4A卷:组合算法,第1部分,Addison-Wesley,2011年,第7.2.1.6节,第443页(算法P)。

%H Paolo Xausa,n表,n=0..23713的a(n)(术语0..2500来自Franklin T.Adams-Waters)。

%H Jason Bell、Thomas Finn Lidbetter和Jeffrey Shallit,<a href=“https://arxiv.org/abs/1804.07996“>通过正则语言逼近的加法数理论,arXiv:1804.07996[cs.FL],2018。

%H N.G.De Bruijn和B.J.M.Morselt,<a href=“http://dx.doi.org/10.1016/S0021-9800(67)80111-X“>关于平面树的注释,J.组合理论2(1967),27-34。

%H Gennady Eremin,<a href=“https://arxiv.org/abs/1909.07675“>平衡括号、字典序列和Dyck多项式的动力学</a>,arXiv:1909.07675[math.CO],2019。

%H R.K.盖伊,<a href=“http://www.jstor.org/stable/2691503“>第二个强大的小数字定律,数学杂志,63(1990),第1期,3-20。

%H Antti Karttunen,<a href=“http://oeis.org/wiki/Catalan_ranking_and_unranking_functions网站“>加泰罗尼亚排名和取消排名功能</a>,OEIS Wiki。

%H Antti Karttunen,626个初始项(最大n=7)的图解,以及该序列编码的加泰罗尼亚数字的各种组合解释。

%H Antti Karttunen,用于计算此序列和许多相关自同构的A089408.c-c程序。

%H Antti Karttunen,<a href=“网址:http://www.iki.fi/~kartturi/matikka/tab9766.htm“>关于加泰罗尼亚三角洲的一些注释。

%H Dana G.Korssjoen、Biyao Li、Stefan Steinerberger、Raghavendra Tripathi和Ruimin Zhang,<a href=“https://arxiv.org/abs/2012.04625“>通过图论发现实数序列的结构:问题列表,arXiv:2012.04625[math.CO],2020-2021。

%H D.L.Kreher和D.R.Stinson,<a href=“http://www.math.mtu.edu/~kreher/cages.html“>组合算法,生成、枚举和搜索,CRC出版社,1998年。

%H Thomas Finn Lidbetter,<a href=“https://uwspace.uwaterloo.ca/bitstream/handle/10012/14254/Lidbetter_Thomas.pdf“>计算、加法和常规语言,加拿大安大略省滑铁卢大学硕士论文,2018年。

%H R.J.Mathar,<a href=“http://arxiv.org/abs/1603.00077“>平面中非相交圆的拓扑不同集,arXiv:1603.00077[math.CO],2016。

%H OEIS Wiki,加泰罗尼亚数字的组合解释</a>

%H F.Ruskey,<a href=“http://webhome.cs.uvic.ca/~ruskey/Publications/Thessis/Thessis.html“>两个组合问题的算法解决方案。

%H R.P.Stanley,<a href=“网址:http://www-math.mit.edu/~rstan/papers.html“>Hipparchus、Plutarch、Schroeder和Hough,《美国数学月刊》,第104卷,第4期,第344页,1997年。

%H R.P.Stanley,<a href=“网址:http://www-math.mit.edu/~rstan/ec/catalan.pdf“>关于加泰罗尼亚语和相关数字的练习</a>。

%H Paolo Xausa,Knuth算法P和U的Mathematica实现。

%H<a href=“/index/Ro#RootedTreePlanEncodings”>平面根树编码的索引条目</a>(此序列的各种子集)。

%H<a href=“/index/Par#parens”>为与括号相关的序列索引条目</a>

%H<a href=“/index/Per#IntegerPermutationCatAuto”>加泰罗尼亚自同构诱导的签名置换索引条目(作用于这些结构的各种双射运算诱导的自然数置换)

%H<a href=“/index/Li#ListFunsOfLisp”>为Lisp的列表函数诱导的序列(这些代码或相应结构上的各种其他操作诱导的序列)索引条目。

%e a(19)=226_10=11100010_2=A063171(19)作为括号表达式:(())()作为二叉树,从左到右按深度第一种方式进行,二进制展开中的1代表内部(分支)节点,0代表叶:

%e 0 0

%电子\/

%e 1 0 0(0)

%e \/\/

%e 1 1

%电子\/

%第1页

%e注意,在这个编码方案中,二叉树的最后一片叶子(在括号中)是隐式的。如果我们将其内部节点(1)解释为cons单元,每个向左分支是“car”,向右分支是对的“cdr”部分,终端节点(0)是()的(NIL),则该树也可以转换为Lisp、Scheme和Prolog等语言中的特定S表达式。这样我们就有了(cons(cons)(())()(cons,)())='((()。() ) . () ) . ( () . ())=(((()))()),即与上述括号表达式相同,但由额外的括号包围。该映射由Scheme函数A014486->括号执行,如下所示。

%e来自Gus Wiseman_,2022年11月21日:(开始)

%e术语和相应的有序根树开始于:

%电子0:o

%e 2:(o)

%e 10:(oo)

%e 12:(o)

%e 42:(ooo)

%e 44:(o(o))

%e 50:(o)o)

%e 52:((oo))

%e 56:((o))

%e 170:(oooo)

%e 172:(oo(o))

%e 178:(o(o)o)

%e 180:(o(oo))

%e 184:(o(o))

%e(结束)

%p#Maple过程CatalanUnrank改编自CAGES书中的3.24算法和Ruskey论文中的Scheme函数CatalanUnrank。有关相应的c程序,请参见a089408.c程序。

%p加泰罗尼亚序列:=proc(upto_n)局部n,a,r;a:=[];对于n从0到upto_n do,对于r从0到(二项式(2*n,n)/(n+1))-1 doa:=[op(a),CatalanUnrank(n,r)];od;od;返回a;结束;

%p CatalanUnrank:=proc(n,rr)local r,x,y,lo,m,a;r:=(二项式(2*n,n)/(n+1))-(rr+1);y:=0;lo:=0;a:=0;对于x从1到2*n做m:=Mn(n,x,y+1);如果(r<=lo+m-1),则y:=y+1;a:=2*a+1;否则lo:=lo+m;y:=y-1;a:=2*a;fi;od;返回a;结束;

%p Mn:=(n,x,y)->二项式(2*n-x,n-((x+y)/2))-二项式;

%p#备选方案:

%p bin:=n->ListTools:反向(转换(n,base,2)):

%p is A014486:=进程(n):局部B,s,B;s:=0;

%p如果n>0,则

%p代表bin(n)do中的b

%p s:=s+ifelse(b=1,1,-1);

%p如果0>s,则返回假fi;

%p od fi;

%p s=0结束:

%p选择(isA014486,[seq(0..240)]);#_Peter Luschny_,2024年3月13日

%t猫[n]:=(2 n)/不/(n+1)!;b2d[li_List]:=折叠[2#1+#2&,0,li]

%t d2b[n_Integer]:=整数位数[n,2]

%t树[n_]:=联接[表[1,{i,1,n}],表[0,{i,1,n}]]

%t nexttree[t]:=展平[Reverse[t]/。{a___,0,0,1,b___}:>反转[{排序[{a,0}]//反转,1,0,b}]]

%t wood[n_/;n<8]:=嵌套列表[nexttree,tree[n],cat[n]-1]

%t桌子[反面[b2d/@wood[j]],{j,0,6}]//压扁

%t tbQ[n_]:=模块[{idn2=整数位数[n,2]},计数[idn2,1]==长度[idn2]/2&&Min[累加[idn2/.{0->-1}]>=0];加入[{0},选择[Range[900],tbQ]](*哈维·P·戴尔,2013年7月4日*)

%t balancedQ[0]=真;balancedQ[n_]:=模[{s=0},Do[s+=如果[b==1,1,-1];如果[s<0,返回[False]],{b,IntegerDigits[n,2]}];返回[s==0]];A014486=FromDigits/@IntegerDigits[Select[Range[0,1000],balancedQ]](*_Jean-François Alcover_,2016年3月5日*)

%t A014486Q[0]=真;A014486Q[n_]:=Catch[Fold[If[#<0,Throw[False],If[#2==0,#-1,#+1]]&,0,整数位数[n,2]]==0];选择[Range[0,880],A014486Q](*_ JungHwan Min_,2016年12月11日*)

%t(*使用Knuth的TAOCP第7.2.1.6节中的算法P-参见参考和链接。*)

%t列表[n_]:=块[{a=扁平[表[{1,0},n]],m=2*n-1,j,k},

%t起始数字[#,2]和/@Reap[

%t当[True,

%t母猪[a];a[[m]]=0;

%t如果[a[[m-1]]==0,

%ta[[--m]]=1,j=m-1;k=2*n-1;

%t当[j>1&&a[j]]==1时,a[[j-]]=0;a[[k]]=1;k=2];

%t如果[j==1,则中断[]];

%t a[[j]]=1;m=2*n-1]

%t]][[2,1]]];

%t连接[{{0},{2}},数组[alist,4,2]](*_Paolo Xausa_,2024年3月16日*)

%o(MIT/GNU方案)(定义(A014486 n)(let((w/2(A072643 n)))(加泰罗尼亚Unrank w/2(if(zero?n)0(-n(A014137(-1+w/2))))

%o;;;这里,“m”是A009766上的行,“y”是A009 766的“m”行上的位置,两者都大于等于0。生成的完全平衡二进制字符串被计算为变量“a”:

%o(定义(CatalanUnrank大小等级)(let loop((a 0)(m(-1+大小))(y大小)(rank rank)(c(A009766(-1+尺寸)大小))

%o;;;这会将完全平衡的二进制字符串“n”转换为相应的S表达式:

%o(define(A014486->括号n)(let loop((n n)(stack(list)))(cond((zero?n)(car stack))((zero-(module n 2))(loop(floor->exact(/n 2)))

%o(定义(cons2top!堆栈)(let((ex-cdr(cdr-stack)))(set-cdr!堆栈(car-ex-cdr)))

%o(PARI)是A014486(n)=my(v=二进制(n),t=0);对于(i=1,#v,t+=如果(v[i],1,-1);如果(t<0,返回(0));t==0 2011年6月10日,查尔斯·格里特豪斯四世

%o(SageMath)

%o定义为_A014486(n):

%o B=箱(n)[2::],如果n!=0其他0

%o s=0

%o对于b中的b:

%o如果b=='1',则s+=1否则-1

%o如果0>s:返回False

%o返回0==s

%o定义A014486_list(n):如果是_A014486(k),则返回[k代表(1..n)中的k

%o A014486_list(888)#_Peter Luschny_,2012年8月10日

%o(Python)

%o从itertools导入计数,islice

%o来自sympy.utilities.iterables导入multiset_permutations

%o def A014486_gen():#术语生成器

%o产量0

%o表示计数(1)中的l:

%o对于multiset_permutation('0'*l+'1'*(l-1))中的s:

%o c,m=0,(l<<1)-1

%o对于范围(m)内的i:

%o如果s[i]==“1”:

%o c+=2

%o如果c<i:

%o中断

%o其他:

%o产量(1<<m)+int(''.join(s),2)

%o A014486_list=list(岛屿(A014486_ gen(),30))#_Chai Wah Wu_,2023年11月28日

%Y特性函数:A080116。反函数:A080300。

%Y二进制宽度2n的项按A000108(n)计数。A036990子集。每座山的山峰数(有根平面普通树的叶子数):A057514。二进制扩展中的尾随零数:A080237。第一个差异:A085192。

%Y另请参阅A009766、A014137、A071156、A079436、A085184、A213704。

%Y参考A020988、A089309、A007814。

%有序树的Y分支由A057515计数。

%有序树的Y边按A072643计数。

%Y有序树的Matula-Goebel编号为A127301。

%Y有序树的标准排名为A358523。

%Y订购树的深度为A358550。

%有序树的Y个节点由A358551计数。

%Y参考A000081、A001263、A358505、A358524。

%K nonn,漂亮,简单,基本,改变了

%0、2

%外梅森(_W)_

%E 2000年8月11日和2004年5月25日安蒂·卡图宁的补充意见

%E添加了a(0)=0(已于2011年6月删除),_Joerg Arndt_,2013年2月27日

查找|欢迎|维基|寄存器|音乐|地块2|Demos公司|索引|浏览|更多|网络摄像头
贡献新序列。或评论|格式|样式表|变换|超级搜索|最近
OEIS社区|维护人OEIS基金会。

许可协议、使用条款、隐私政策。.

上次修改时间:美国东部夏令时2024年3月29日00:26。包含371264个序列。(在oeis4上运行。)