
Java面试题
ouyangjun__
这个作者很懒,什么都没留下…
展开
-
面试题:按Z字形打印二叉树
一)题目简介题目要求:按照下面Z箭头方向打印二叉树?题目图解:二)题目分析图解分析:1)由于二叉树是有层级关系的,可以分为奇数行和偶数行。2)从图中可以看出,奇数行都是从左往右打印,偶数行都是从右往左打印。步骤分析:第一步:可利用Stack的“先进后出,后进先出”的特性。先声明两个Stack,一个存储奇数行数据的奇数栈,一个存储偶数行数据的偶数栈。...原创 2019-09-23 21:15:10 · 3293 阅读 · 0 评论 -
面试题:根据一颗树的前序遍历与中序遍历构造二叉树
一)题目简介二)题目分析1)前序遍历结果中,第一个元素一定是根节点。2)从中序遍历结果中,先找到根节点的下标值,小于根节点下标的值,一定是根节点的左孩子,大于根节点下标的值,一定是根节点的右孩子。再把中序遍历的结果,分成两组,一个是根节点左孩子组,一个是根节点右孩子组。3)从头扫描前序遍历,根据中序遍历的分组依次判断该值需要放置到哪一个节点上。三)题目源码第一步:初始化...原创 2019-09-21 20:05:17 · 374 阅读 · 0 评论 -
面试题:层级数据转树形菜单
一)题目简介一道层级数据转树形菜单面试题,如图:二)题目分析分析:1、parent_id为null的节点为顶级节点,需考虑多个顶级节点处于同一层级的情况。2、每一节点的id属性作为下一级节点的parent_id属性,构造成一个层级数据结构。步骤:1、先初始化一个数据结构类,再初始化数据,用List存储。2、先找出数据中所有顶级节点,作为第一层级的数据。3、循...原创 2019-09-20 21:50:14 · 1024 阅读 · 0 评论