面试篇:算法(二:二叉树)

一:创建节点

c 复制代码
class Node(
	public int idata; 	--节点
	public int Ddata;	--节点数据
	public Node LeftChild;	--左节点
	public Node RightChild;	--右节点
	public void prints(
		System.out.print(Data);
	)

二:遍历

1. 前序遍历。

c 复制代码
public void preOrder(Node node){
			if(node.idata = null)
			{return;}
			else
			{
				node.prints;
				beforFind(LeftChild);
				beforFind(RightChild);
			}

2. 中序遍历。

c 复制代码
	public void inOrder(Node node){
			if(node.idata = null)
			{return;}
			else
			{
				beforFind(LeftChild);
				node.prints;
				beforFind(RightChild);
			}
			
		}

3. 后序遍历。

c 复制代码
	public void postOrder(Node node){
			if(node.idata = null)
			{return;}
			else
			{
				beforFind(LeftChild);
				beforFind(RightChild);
				node.prints;
			}
			
		}

4. 层序遍历。

c 复制代码
	public void levelOrder(TreeNode node)
	{
		TreeNode cur=node;
		if (cur == null)
			{return;}
		else
		{
			Queue<Treenoede> queue=new LinkedList<>();
			queue.offer(cur);
			while(queue ! = null)
			{
				system.out.print(queue.poll().val);
				if(cur.left ! =null )
				{
					queue.offer(cur.left);
				}
				if(cur.right ! =null )
				{
					queue.offer(cur.right);
				}
			}
		}
	
	}
相关推荐
码爸7 小时前
线性回归算法
算法·机器学习·线性回归
Coder-magician7 小时前
《代码随想录》刷题打卡day51:图论-part09(dijistra堆优化,Bellman_ford算法)
算法·图论
Nil2087 小时前
leetcode 763划分字母区间
算法·leetcode·职场和发展
不会就选b8 小时前
算法日常・每日刷题--<动态规划>20
算法·leetcode·动态规划
别动我齐刘海8 小时前
C++ 工程化学习
java·linux·前端·c++·学习·机器学习·机器人
青少儿编程课堂9 小时前
迪杰斯特拉(Dijkstra)算法:单源最短路与赛场路线规划
c++·python·算法·bfs·信息学竞赛
不会就选b9 小时前
算法日常・每日刷题--<动态规划>19
算法·leetcode·职场和发展
code2cat9 小时前
Java进阶篇之AtomicLongFieldUpdater:把累计额度留在对象字段中
java·cas·并发编程
WeiXin_DZbishe9 小时前
基于springboot城市公交实时运营与调度系统-计算机毕设 附源码【课程设计】66173
java·vue.js·spring boot·后端·python·php·课程设计
泡茶喝茶写代码9 小时前
A股量化数据工程:从 REST 接口到策略信号(第 18 篇):放量缩量异动扫描
java·python·股票数据api·股票数据api接口·股票api数据接口·股票量化数据api·股票量化数据接口