学习小结5

这个章节的学习量比较大所以其实是有点吃不消的
对于关键知识点二叉树的储存遍历,哈夫曼树的运用还是学习得比较深入
但是像线索二叉树之类的比较偏的,老师没有怎么讲的知识点,其实只是大概知道个概念并不太理解

遍历二叉树方面,遍历的方式方法以及形式之多确实令我觉得比较吃惊

其中队列以及栈的运用让我觉得比较新鲜以及感觉到知识点之间的串联

在作业方面其中比较有困难的是实践一第二题中的查找遍历两个树是否相同的算法,查了资料才能够完成

bool Is_same(int r1,int r2) {
    bool a,b;
    if((r1==-1) && (r2==-1)) return true;
    if(((r1!=-1) && (r2==-1))||((r1==-1) && (r2!=-1))) return false;
    if(T1[r1].data!=T2[r2].data) return false;
    if((T1[r1].left==-1) && (T2[r2].left==-1))return (Is_same(T1[r1].right,T2[r2].right));
    if (((T1[r1].left != -1) && (T2[r2].left != -1)) && (T1[T1[r1].left].data == T2[T2[r2].left].data)) 
        return ((a = Is_same(T1[r1].left, T2[r2].left)) && (b = Is_same(T1[r1].right, T2[r2].right)));
    else 
        return ((a= Is_same(T1[r1].left, T2[r2].right)) && (b = Is_same(T1[r1].right, T2[r2].left)));
}

在小组实践中比较令人困惑的就是动态申请数组的赋初值问题

posted @ 2020-05-30 21:58  张智恒  阅读(116)  评论(0编辑  收藏  举报