`
serisboy
  • 浏览: 172568 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

某公司的面试题--递归拿到所有子类的id

    博客分类:
  • java
阅读更多
package com;

import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;

public class Test1 {
	List list2 = new ArrayList();
         //构造数据库list
	public List<Student> getStudent(){
		List<Student> list = new ArrayList<Student>();
		list.add(new Student("2","1"));
		list.add(new Student("3","2"));
		list.add(new Student("4","3"));
		list.add(new Student("5","3"));
		return list;
	}
         //循环拿到所有的子类id
	public List getAll(String i,List<Student> list){

		Iterator iter = list.iterator();
		while(iter.hasNext()){
			Student student = (Student)iter.next();
			if(i.equals(student.getParentid())){
				list2.add(student.getId());
				getAll(student.getId(),list);
			}
		}
		return list2;
	}
         //测试
	public static void main(String[] args) {
		List list = new Test1().getAll("1", new Test1().getStudent());
		Iterator iter = list.iterator();
		while(iter.hasNext()){
			System.out.println((iter.next()));
		}
	}
}
     class Student {
	private String id;
	private String parentid;

	public Student() {
	}

	public Student(String id, String parentid) {
		this.id = id;
		this.parentid = parentid;
	}

	public String getId() {
		return id;
	}

	public void setId(String id) {
		this.id = id;
	}

	public String getParentid() {
		return parentid;
	}

	public void setParentid(String parentid) {
		this.parentid = parentid;
	}
}
分享到:
评论

相关推荐

    递归拿到所有子类的id

    List list2 = new ArrayList(); public List getAll(String i,List&lt;Student&gt; list){ Iterator iter = list.iterator(); while(iter.hasNext()){ Student student = (Student)iter.next();...

    n后问题---递归回溯法 n后问题---递归回溯法

    n后问题---递归回溯法 n后问题---递归回溯法 n后问题---递归回溯法 n后问题---递归回溯法 n后问题---递归回溯法 n后问题---递归回溯法 n后问题---递归回溯法 n后问题---递归回溯法 n后问题---递归回溯法 n后问题---...

    C++试题--递归

    ### C++ 试题解析:递归与 L 形块问题 #### 标题与描述解析 根据提供的标题“C++试题--递归”以及描述部分的内容来看,这是一道涉及递归算法的 C++ 编程题目。描述中的示例显示了一个通过用户输入 X-Y 坐标来填充一...

    n后问题--非递归迭代回溯.rar

    n后问题--非递归迭代回溯.rar n后问题--非递归迭代回溯.rar n后问题--非递归迭代回溯.rar n后问题--非递归迭代回溯.rar n后问题--非递归迭代回溯.rar n后问题--非递归迭代回溯.rar

    算法大全-面试题-数据结构

    第二种算法则采用了递归的方式,通过递归函数调用自己来完成链表的反转。两种方法都需要注意边界条件,即空链表和只有一个元素的链表不需要进行反转。 在链表的操作中,还有其他一些常见问题,如查找链表的倒数第N...

    vue_ant-design-vue菜单递归

    在实际的Web应用开发中,尤其是那些拥有复杂权限管理和动态路由的系统,后端服务器通常会返回一个包含所有菜单项的数据结构。这些数据可能包含多个层级,以表示菜单的嵌套关系。为了在前端正确地渲染出这些菜单,...

    IT面试题-二叉树的三种遍历的递归与非递归实现,详细代码

    在IT面试中,二叉树的遍历是一个常见的知识点,尤其对于编程岗位来说更是必不可少的考察点。二叉树的遍历主要有三种方式:先序遍历、中序遍历和后序遍历。这些遍历方法可以使用递归或非递归的方式实现。 **先序遍历...

    js代码-010面试题--递归的理解

    在`js代码-010面试题--递归的理解`这个主题中,我们主要探讨以下几个核心知识点: 1. **递归的基本原理**:递归函数由两部分组成:基本情况(Base Case)和递归情况(Recursive Case)。基本情况是问题的最简单形式...

    前端大厂最新面试题-transformer.docx

    本文的描述为空,但通过标签和部分内容可以了解到这是一道关于Transformer的面试题,该题目考察了候选人的数据结构转换能力。 标签解读 前端工程师面试,表明本文是关于前端开发领域的面试题。 部分内容解读 本文...

    前端大厂最新面试题-tecent.docx

    本文档标题为"前端大厂最新面试题-tecent",该标题表示这是一个关于前端面试题的文档,特别是针对腾讯(tecent)公司的面试题。 描述解释 该文档的描述为"前端大厂最新面试题-tecent",该描述进一步强调了该文档的...

    二叉树的操作--递归非递归遍历、结点个数、树深度

    遍历递归的先中後序, 非递归的先中後序, 计算出深度 结点数 /* 运行结果: ------------------------ 请先序输入二叉树(如:ab三个空格表示a为根节点,b为左子树的二叉树) ab c 先序递归遍历二叉树: a b c 先序...

    main.c 哈夫曼编码实现_c语言 求WPL -----递归求解

    哈夫曼编码实现_c语言 (最小堆) 求WPL -----递归求解

    程序员面试题精选100题-何海涛

    《程序员面试题精选100题—何海涛》是一份详实的IT面试准备资料,由何海涛整理发布,旨在帮助应届毕业生和求职者准备面向微软、谷歌等知名科技公司的面试。此资料不仅收录了精选的100道面试题目,还提供了详细的解题...

    大师叫你不再害怕 ----递归算法

    由于递归涉及到函数调用自身的多次堆叠,调试时可能会遇到一些特殊的挑战,比如跟踪调用栈、处理无限递归的情况,以及确保递归终止条件正确无误。 例如,当我们计算斐波那契数列时,如果没有正确设置终止条件,可能...

    基于U-Net的递归残差卷积神经网络(R2U-Net)在医学图像分割中的应用.pdf

    U-Net的落地应用基于U-Net的递归残差卷积神经网络(R2U-Net)在医学图像分割中的应用

    [6.6.1]--413递归小结.srt

    [6.6.1]--413递归小结.srt

    [6.6.1]--413递归小结.mp4

    [6.6.1]--413递归小结.mp4

    前端大厂最新面试题-depth-first-search.docx

    前端大厂最新面试题-depth-first-search 本文档总结了前端大厂最新面试题,涵盖了深度优先搜索(Depth-First Search, DFS)相关的问题和解决方案。深度优先搜索是一种常见的图遍历算法,通过递归或迭代的方式遍历图...

    腾讯面试题解析.pdf

    腾讯面试题解析.pdf 本资源是一份详细的腾讯面试题解析文档,涵盖了 Android 面试题、网络基础、常用三方库、算法基础等多个方面的知识点。下面是对该文档的详细解析: 计算机基础面试题 在计算机基础面试题部分...

    前端大厂最新面试题-binary-search.docx

    本资源是前端大厂最新面试题 binary-search.docx,涵盖了二分查找、二叉搜索树、数组、链表、动态规划、滑动窗口、递归、回溯算法等多个知识点。下面是对每个知识点的详细解释: 二分查找是解决数组中的查找问题的...

Global site tag (gtag.js) - Google Analytics