【二叉树】统计成绩出现的次数

来源:互联网 发布:淘宝做分销有成功的吗 编辑:程序博客网 时间:2024/06/06 09:52

编程实现二叉搜索树来记录考试成绩的分布。

解题:
修改 Node 对象, 为其增加一个记录成绩出现频次的成员。

function Node(data,left,right){    this.data = data;    this.count = 1;    this.left = left;    this.right = right;}

同时还需要一个方法, 当在 BST 中发现某成绩时, 需要将出现的次数加 1, 并且更新该节点。

function update(data){    var grade = this.findup(data);    grade.count++;    return grade;}

最后创建一棵二叉搜索树并将数据逐一插入。

var gradedistro = new BST();for (var i = 0; i < grades.length; ++i) {    var g = grades[i];    var grade = gradedistro.findup(g);    if (grade == null) {        gradedistro.insert(g);    } else {        gradedistro.update(g);    }}
原创粉丝点击