廣義表最基本的操作:取表頭head(LS)與取表尾tail(LS)
阿新 • • 發佈:2019-01-02
牛客網考題:
已知廣義表: A=(a,b), B=(A,A), C=(a,(b,A),B), 求下列運算的結果:
tail(head(tail(C))) =( )
head() 返回列表的第一個元素;
tail() 返回列表的刪去第一個元素之後的剩餘列表;
所以,
tail(C)=((b,A),B);
head(tail(C))=head( ((b,A),B) )=(b,A)
tail(head(tail(C)))=tail((b,A))=(A)
注意,head返回的是元素(去掉最外層括號),tail返回的是集合(保留括號)。
例:LS=(a,(b,c,d))
head(LS)=a
tail(LS)=((b,c,d))
head(tail(LS))=(b,c,d)
tail(tail(LS))=()
head(head(tail(LS)))=b
tail(head(tail(LS)))=(c,d)
head(tail(head(tail(LS))))=c
tail(tail(head(tail(LS))))=(d)
head(tail(tail(head(tail(LS)))))=d
tail(tail(tail(head(tail(LS)))))=()
轉載地址:http://blog.sina.com.cn/s/blog_4d6e44860100c1fb.html