910数据结构(2016年真题)

1.将一带头结点的单链表head逆置。要求:逆置在原链表进行,不允许构造一个链表。

void Link_Reverse(LinkList &head){
	LNode *p = head->next;
	head->next = null;
	while(p != null){
		LNode *q = p->next;;
		head->next = p;
		p->next = head->next;
		p = q;	
	}
}

2.设二叉树用二叉链表表示,设计算法,求二叉树的高度。

int high(BTree *T){
	if(T == null){
		return 0;
	int lhigh = high(T->lchild);
	int rhigh = high(T->rchild);
	if(lhigh > rchild){
		return lhigh + 1;
	}
	return rhigh + 1;
}

你可能感兴趣的:(数据结构,算法)