标签:des style blog ar color sp for on div
Given a binary tree, find the lowest common ancestor of two given nodes in tree. Each node contains a parent pointer which links to its parent.
int getHeight(Node* p) { int height = 0; while (p) { height++; p = p->parent; } return height; } Node* LCA(Node* p, Node *q) { int h1 = getHeight(p); int h2 = getHeight(q); if (h1 > h2) { swap(h1, h2); swap(p, q); } for (int h = 0; h < h2-h1; h++) { q = q->parent; } while (p && q) { if (p == q) return p; p = p->parent; q = q->parent; } return NULL; }
Lowest Common Ancestor of a Binary Tree, with Parent Pointer
标签:des style blog ar color sp for on div
原文地址:http://www.cnblogs.com/litao-tech/p/4168403.html