![C语言 二叉树存储在A[1...100],求二叉树i,j最近公共跟结点,第1张 C语言 二叉树存储在A[1...100],求二叉树i,j最近公共跟结点,第1张](/aiimages/C%E8%AF%AD%E8%A8%80+%E4%BA%8C%E5%8F%89%E6%A0%91%E5%AD%98%E5%82%A8%E5%9C%A8A%5B1...100%5D%2C%E6%B1%82%E4%BA%8C%E5%8F%89%E6%A0%91i%2Cj%E6%9C%80%E8%BF%91%E5%85%AC%E5%85%B1%E8%B7%9F%E7%BB%93%E7%82%B9.png)
//日常记录 //设一棵有n(n<=100)结点的二叉树存储在A[1...n] 求二叉树i,j最近公共跟结点. #include#include #include #define MaxSize 100 char Common(char A[] ,int i , int j) { if(A[i]!= '#' && A[j]!= '#') { while(A[i] != A[j]) //i在j同层右面或者下层 { if(i > j) { i = i/2; } else j =j/2; } return A[i]; } } int main() { char A[n] = "ABCDEFGHIJ#" ; int i = 7 , j = 9; printf("%c和%c的公共结点是:",A[i],A[j]); int a = Common(A,i,j); printf(" %c",a); } // A // B C // D E F G //H i J //测试 H和J的公共结点是: B //--------------------------------
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)