我程序中用到的第一个递归算法

  说来惭愧,工作这么久了都没有用到一个递归算法。呵呵,第一次。
  功能介绍:有这样一个表,自外连接,也就是parent(父结点)所对应的ID也是本表的,这段代码将返回所有某个节点的子节点ID。
  参数介绍:
String deptId:当前的ID
List ids:当前ID下的所有子节点列表

调用:this.getAllSubDeptid(categoryId, categoryIds);

	public void getAllSubDeptid(String deptId, List ids) throws SecuritySQLException {
		ids.add(deptId);
		// 查询出当前部门的子部门
		Map map = new HashMap();
		map.put("parent", deptId);		
		List list =(List) categoryDao.queryByFilter(map);
		// 如果子部门数为0,则返回
		if (list.size() == 0) {
		} else {
			for (int i = 0; i < list.size(); i++) {

				Category category = (Category) list.get(i);
				String subId = (String) category.getId();
				getAllSubDeptid(subId, ids);
			}
		}
	}

你可能感兴趣的:(算法,工作)