正在加载图片...
2.已知二叉树中的结点类型BinTreeNode定义为: struct BinTreeNode (ElemType data;BinTreeNode left,right;); 其中data为结点值域,left和right分别为指向左、右子女结点的指针域。根据下面算法 的定义指出其功能。算法中参数BT指向一棵二叉树。 BinTreeNode BTreeSwopX(BinTreeNode BT) if(BT==NULL)return NULL: else BinTreeNode pt=new BinTreeNode; pt->data=BT->>data; pt->right=BTreeSwopX(BT->left); pt->left=BTreeSwopX(BT->right); return pt; } } 算法功能: 得 分 评卷人 六、算法设计题(每小题6分,共12分】 1.已知f为单链表的表头指针,单链表中的结点结构为(data,limk),并假定每个结点的 值均为大于0的整数。根据下面函数声明写出递归算法,返回单链表中所有结点的最大值,若 单链表为空则返回数值0。 int Max(LinkNode f); 2.设Q是一个由其队尾指针和队列长度标识的循环队列,按照下面队列定义和函数声明 写出从此队列中别除一个元素的算法。 //循环队列定义 struct CyclicQueue ElemType elem[M]; /M为已定义过的整型常量 int rear; /rear指向队尾元素的后一个位置 int length; //八ength指示队列中元素个数 }; /若队列非空则删除队头元素并由引用参数x带回,同时返回true;否则若队列为空则返 ▣false。 bool DelCQueue(CyclicQueue&.Q,ElemType&x); 722.已知二叉树中的结点类型 BinTreeNode定义为: struct BinTreeNode{ElemType data;BinTreeNode‘left,‘right;}; 其中 data为结点值域,left和 right分别为指向左、右子女结点的指针域。根据下面算法 的定义指出其功能。算法中参数 BT指向一棵二叉树。 BinTreeNode‘ BTreeSwopX<BinTreeNode‘BT) { if(BT￾else { =NULL) return NULL; BinTreeNode * pt=new BinTreeNode; pt一>data=BT一>data; pt一>right=BTreeSwopX(BT一>left); pt一>left= BTreeSwopX( BT一>right); return pt; } } 算法功能 : 得 分 评卷人 六、算法设计题(每小题 6分 ,共 12分 ) 1.已知f为单链表的表头指针,单链表中的结点结构为(data, link),并假定每个结点的 值均为大于 。的整数。根据下面函数声明写出递归算法,返回单链表中所有结点的最大值,若 单链表为空则返回数值 。。 intMax(LinkNode }- f}; 2.设 Q是一个由其队尾指针和队列长度标识的循环队列 ,按照下面队列定义和函数声 明 写出从此队列中删除一个元素的算法 。 //循环队列定义 struct. CyclicQueue { Elem"Type elem仁M]; tnt rear; int length; //M为已定义过的整型常量 //rear指向队尾元素的后一个位置 //length指示队列中元素个数 }; /若队列非空则删除队头元素并由引用参数 x带回,同时返回true;否则若队列为空则返 回 falseo bool DelCQueue(CyclicQueue}- Q,ElemType}. x);
<<向上翻页向下翻页>>
©2008-现在 cucdc.com 高等教育资讯网 版权所有