Java无限级树(递归)超实用案例
如下所示:
@Override public String getEmployeeBysup(String employeeID) { String str=""; str = getEmployeeBysupSelas(employeeID, str); return str.substring(0, str.lastIndexOf(",")); } @Override public String getEmployeeBysupSelas(String employeeID, String str) { str+="'"+employeeID+"',"; System.out.println(str); String sql="SELECT u.employeeID from tbl_system_user u where supervisorID='"+employeeID+"'"; List<String> list= jdbcTemplate.queryForList(sql, String.class); if(list!=null&&list.size()>0){ for(int i=0;i<list.size();i++){ str = getEmployeeBysupSelas(list.get(i), str); } } return str; }
以上就是小编为大家带来的Java无限级树(递归)超实用案例全部内容了,希望大家多多支持我们~
相关推荐
-
Java递归算法的使用分析
递归算法是一种直接或者间接地调用自身的算法.在计算机编写程序中,递归算法对解决一大类问题是十分有效的,它往往使算法的描述简洁而且易于理解. 问题1:一列数的规则如下: 1.1.2.3.5.8.13.21.34 ,求第30位数是多少?使用递归实现 复制代码 代码如下: public class FibonacciSequence { public static void main(String[] args){ System.out.println(Fribonacci(9))
-
Java递归算法经典实例(经典兔子问题)
题目:古典问题:3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子总数为多少? 分析:首先我们要明白题目的意思指的是每个月的兔子总对数:假设将兔子分为小中大三种,兔子从出生后三个月后每个月就会生出一对兔子, 那么我们假定第一个月的兔子为小兔子,第二个月为中兔子,第三个月之后就为大兔子,那么第一个月分别有1.0.0,第二个月分别为0.1.0, 第三个月分别为1.0.1,第四个月分别为,1.1.1,第五个月分别为2.1.2,第六个月分别为3.2.3,第
-
Java中的递归详解(用递归实现99乘法表来讲解)
1:普通实现99乘法表太简单,是个程序员都会,实现如下: package test.ms; public class Test99 { public static void main(String[] args) { for(int i=1; i<=9;i++){ for(int j=1; j<=i; j++){ System.out.print(j+" * "+i+ " = "+(i*j) +" "); } System.out.p
-
Java递归 遍历目录的小例子
复制代码 代码如下: public static void main(String[] args) { File f = new File("D:\\test\\fsd"); listChids(f,0); } public static void listChids(File f,int level){ String preSrt = ""; for(int i=0;i<level;i++){ preSrt += "
-
十种JAVA排序算法实例
排序算法有很多,所以在特定情景中使用哪一种算法很重要.为了选择合适的算法,可以按照建议的顺序考虑以下标准: (1)执行时间 (2)存储空间 (3)编程工作 对于数据量较小的情形,(1)(2)差别不大,主要考虑(3):而对于数据量大的,(1)为首要. 一.冒泡(Bubble)排序 复制代码 代码如下: void BubbleSortArray() { for(int i=1;i<n;i++) { for(int j=0;i<n-i;j++)
-
java 合并排序算法、冒泡排序算法、选择排序算法、插入排序算法、快速排序算法的描述
算法是在有限步骤内求解某一问题所使用的一组定义明确的规则.通俗点说,就是计算机解题的过程.在这个过程中,无论是形成解题思路还是编写程序,都是在实施某种算法.前者是推理实现的算法,后者是操作实现的算法. 一个算法应该具有以下五个重要的特征: 1.有穷性: 一个算法必须保证执行有限步之后结束: 2.确切性: 算法的每一步骤必须有确切的定义: 3.输入:一个算法有0个或多个输入,以刻画运算对象的初始情况: 4.输出:一个算法有一个或多个输出,以反映对输入数据加工后的结果.没有输出的算法是毫无意义的:
-
Java使用递归法解决汉诺塔问题的代码示例
汉诺(Hanoi)塔问题:古代有一个梵塔,塔内有三个座A.B.C,A座上有n个盘子,盘子大小不等,大的在下,小的在上(如图). 有一个和尚想把这n个盘子从A座移到B座,但每次只能允许移动一个盘子,并且在移动过程中,3个座上的盘子始终保持大盘在下,小盘在上.在移动过程中可以利用B座,要求打印移动的步骤.如果只有一个盘子,则不需要利用B座,直接将盘子从A移动到C. 如果有2个盘子,可以先将盘子1上的盘子2移动到B:将盘子1移动到c:将盘子2移动到c.这说明了:可以借助B将2个盘子从A移动到C,当然,
-
java实现八皇后问题示例分享
问题描述:将八个皇后放在棋盘上,任何两个皇后都不能互相攻击(即没有任何两个皇后在同一行.同一列或者同一对角线上)如图所示 在本文中,对于两道题采用了稍微不同的解决方式,但都使用的是一维数组.6.20中,要求求出一种有效布局,我建立了一个 有八个元素的一位数组,通过随意打乱数组的值,通过值与下标的比较,直至得出一个有效布局:6.22中,要求求出所有有效布局,这里我使用了八进制数,遍历了 从001234567-076543210的所有数字,通过将其转化为八进制字符串,每位与其下标相比较,输出满
-
java实现MD5加密算法的实例代码
复制代码 代码如下: package other; import java.security.MessageDigest;import java.security.NoSuchAlgorithmException;/* * MD5 算法*/public class MD5 { // 全局数组 private final static String[] strDigits = { "0", "1", "2", "3", &
-
Java基于循环递归回溯实现八皇后问题算法示例
本文实例讲述了Java基于循环递归回溯实现八皇后问题.分享给大家供大家参考,具体如下: 运行效果图如下: 棋盘接口 /** * 棋盘接口 * @author Administrator * */ public interface Piece { abstract boolean isRow(int line); abstract boolean isCol(int line,int col); } 棋盘类: /** * 棋盘 * @author Administrator * */ public
-
使用java自带des加密算法实现文件加密和字符串加密
复制代码 代码如下: import java.io.ByteArrayInputStream;import java.io.ByteArrayOutputStream;import java.io.File;import java.io.FileInputStream;import java.io.FileOutputStream;import java.io.InputStream;import java.io.OutputStream;import java.security.SecureR
-
java数学归纳法非递归求斐波那契数列的方法
本文实例讲述了java数学归纳法非递归求斐波那契数列的方法.分享给大家供大家参考.具体如下: Integer能表示的最大值为 2147483647 大概是21.4亿,这里没有考虑溢出情况(当size为983时就会溢出)! import java.util.List; import java.util.ArrayList; /** * @author jxqlovejava * 斐波那契数列 */ public class Fibonacci { public static List<Intege
随机推荐
- 详解用node.js实现简单的反向代理
- jQuery插件开发的五种形态小结
- Vue学习笔记进阶篇之过渡状态详解
- 图文演示Photoshop调出金碧辉煌的色彩第1/2页
- Android字体设置及Roboto字体使用方法
- PHP链接MySQL的常用扩展函数
- 创建基于ASP.NET的SMTP邮件服务的具体方法
- 在Django的模板中使用认证数据的方法
- Android使用ViewPager加载图片和轮播视频
- MySql安装启动两种方法教程详解
- Android编程中TextView字体属性设置方法(大小、字体、下划线、背景色)
- BootStrap实现鼠标悬停下拉列表功能
- jquery ajax传递中文参数乱码问题及解决方法说明
- jQuery编辑器KindEditor4.1.4代码高亮显示设置教程
- jQuery自定义元素右键点击事件(实现案例)
- jQuery插件实现文字无缝向上滚动效果代码
- As3.0 xml + Loader应用代码
- Android一次性退出多个Activity的方法
- 关于Spring总结(必看篇)
- cache_lite试用