《算法导论》笔记 第12章 12.3 插入和删除
摘要:
【笔记】插入:从根结点开始,沿树下降。指针x跟踪这条路径,而y始终指向x的父结点。根据key[z]与key[x]的比较结果,决定向左向右转。直到x成为NIL为止。这个NIL所占位置及我们想插入z的地方,y即为z的父结点。删除:以指向z的指针为参数,考虑三种情况。若z没有子女,则修改其父结点p[z],是NIL为其子女;如果结点z只有一个子女,则可以通过在其子结点与父结点之间建立一条链来删除z。如果结点z有两个子女,先删除z的后继y(它没有左子女),再用y的内容来替代z的内容。 void treeInsert(NODE *z) { NODE *y = NULL; ... 阅读全文
posted @ 2014-04-18 19:51 电子幼体 阅读(1058) 评论(0) 推荐(0) 编辑