VerifySequenceOfBST

来源:互联网 发布:电子数据交换技术edi 编辑:程序博客网 时间:2024/06/14 02:04
#include<stdio.h>bool VerifySequenceOfBST(int sequence[],int length){if(sequence==NULL || length<=0)return false;int root=sequence[length-1];int i;for(i=0;i<length-1;i++)if(sequence[i]>root)break;for(int j=i;j<length-1;j++)if(sequence[j]<root)return false;bool left=true;if(i>0)left=VerifySequenceOfBST(sequence,i);bool right=true;if(i<length-1)right=VerifySequenceOfBST(sequence+i,length-1-i);return left&&right; }void main(){int data[] = {4, 8, 6, 12, 16, 14, 10};bool flag=VerifySequenceOfBST(data,7);if(flag)printf("后序搜索二叉树序列正确\n");else printf("不正确\n");int data1[] = {7, 6, 4, 5};flag=VerifySequenceOfBST(data1,4);if(flag)printf("后序搜索二叉树序列正确\n");else printf("不正确\n");flag=VerifySequenceOfBST(NULL,0);if(flag)printf("后序搜索二叉树序列正确\n");else printf("不正确\n");}

0 0
原创粉丝点击