当前位置: 首页> 健康> 知识 > 泉州百度搜索推广_上海网校排名_北京seo报价_怎么让百度收录网址

泉州百度搜索推广_上海网校排名_北京seo报价_怎么让百度收录网址

时间:2025/7/9 0:09:51来源:https://blog.csdn.net/hole_diss/article/details/145080392 浏览次数:0次
泉州百度搜索推广_上海网校排名_北京seo报价_怎么让百度收录网址

文章目录

  • 一、数据结构
  • 二、先序遍历
  • 三、中序遍历
  • 四、后序遍历
  • 五、层序遍历

前序遍历、中序遍历、后序遍历、层序遍历

一、数据结构

// 二叉树的数据结构; 为节点初始化属性和子节点,数据属性这里只有value
// lNode: 左子节点
// rNode: 右子节点
const root = {value: "ROOT",lNode: {value: "A",lNode: {value: "C",lNode: { value: "E", lNode: null, rNode: null },rNode: { value: "F", lNode: null, rNode: null }},rNode: { value: "D", lNode: { value: "G", lNode: null, rNode: null }, rNode: null }},rNode: { value: "B", lNode: null, rNode: null }
};

二、先序遍历

// 先序遍历
const preorderTraverse = (node) => {if (node === null) return;// 注意这里是console,做测试效果,其实可以得到元素的顺序,做其他排序等操作console.log("value", node?.value);preorderTraverse(node.lNode);preorderTraverse(node.rNode);
};
try {preorderTraverse(root);
} catch (error) {console.log("error", error);
}

三、中序遍历

// 中序遍历
const inorderTraverse = (node) => {if (node === null) return;inorderTraverse(node.lNode);console.log(node.value);inorderTraverse(node.rNode);
};
try {inorderTraverse(root);
} catch (error) {console.log("error", error);
}

四、后序遍历

// 后序遍历
const postorderTraverse = (node) => {if (node === null) return;postorderTraverse(node.lNode);postorderTraverse(node.rNode);console.log(node.value);
};
try {postorderTraverse(root);
} catch (error) {console.log("error", error);
}

五、层序遍历

// 层序遍历
const sequenceTraverse = (root) => {if (!root) return;let queue = []; // 队列queue.push(root); // 初始队列// 循环队列;循环的过程中不断拆分节点,左右先后入队while (queue.length) {const node = queue.shift(); // 弹出队首元素console.log(node.value);// 每个元素都要拆分左右子树,并且入队if (node.lNode) {queue.push(node.lNode);}if (node.rNode) {queue.push(node.rNode);}}
};
try {sequenceTraverse(root);
} catch (error) {console.log("error", error);
}
关键字:泉州百度搜索推广_上海网校排名_北京seo报价_怎么让百度收录网址

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

责任编辑: