首页 > 代码库 > 阿里 2014-08-29 校招机试题 求一个存放整数的二叉树相差最大的两节点差值绝对值
阿里 2014-08-29 校招机试题 求一个存放整数的二叉树相差最大的两节点差值绝对值
题目:写一个函数,输入一个二叉树,树中每个节点存放了一个整数值,函数返回这颗二叉树中相差最大的两个节点间的差值绝对值。请注意程序效率。
如果是数值之差,感觉怎么着也得遍历一遍,直接修改下二叉树的基本遍历代码就可以。
#include<stdio.h> #include <stdlib.h> typedef struct Node { int data; struct Node * left; struct Node * right; } BitNode, *BiTree; /* 求差值的函数,传入一个二叉树,其中 *min, *max 初始放 root-data, *value 放差值即要求的值 */ void getValue(BiTree bt, int *min, int *max, int* value) { if(bt == NULL) return; if (*min > bt->data) *min = bt->data; if (*max < bt->data) *max = bt->data; *value = http://www.mamicode.com/*max - *min;>阿里 2014-08-29 校招机试题 求一个存放整数的二叉树相差最大的两节点差值绝对值
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。