摘要:
项目主页:https://gitee.com/klguang/coderfun-boot 演示地址:http://106.15.195.9:8080/admin/项目文档:https://www.kancloud.cn/coderfun-boot/coderfun-boot-zh/868497在飞速 阅读全文
摘要:
klg-jpa:spring-data-jpa 最佳实践 项目介绍 码云地址:https://gitee.com/klguang/klg-jpa JPA是sun为POJO持久化制定的标准规范,用来操作实体对象,执行CRUD操作,让开发者从繁琐的JDBC和SQL代码中解脱出来。 但是JPA有以下两个缺 阅读全文
摘要:
fieldmeta: 基于springboot的字段元数据管理 version:Alpha 0.0.1 ,码云地址:https://gitee.com/klguang/fieldmeta 元数据(Metadata), 又称中介数据、中继数据,为描述数据的数据(data about data), fi 阅读全文
摘要:
树形结构数据存储方案 Adjacency List:每一条记录存parent_idPath Enumerations:每一条记录存整个tree path经过的node枚举Nested Sets:每一条记录存 nleft 和 nrightClosure Table:维护一个表,所有的tree path 阅读全文
摘要:
jxls是一个简单的、轻量级的excel导出库,使用特定的标记在excel模板文件中来定义输出格式和布局。java中成熟的excel导出工具有pol、jxl,但他们都是使用java代码的方式来导出excel,编码效率很低且不方便维护。 另外,jxls2.3的运行效率也相当不错,经过测试,在禁用日志输 阅读全文
摘要:
递归的思想 以此类推是递归的基本思想。 具体来讲就是把规模大的问题转化为规模小的相似的子问题来解决。在函数实现时,因为解决大问题的方法和解决小问题的方法往往是同一个方法,所以就产生了函数调用它自身的情况。另外这个解决问题的函数必须有明显的结束条件,这样就不会产生无限递归的情况了。 递归的两个条件 可以通过递归调用来缩小问题规模,且新问题与原问题有着相同的形式。(自身调用) 存在一种简单情... 阅读全文
摘要:
基本思想:将若干有序序列逐步归并,最终归并成一个有序序列。 二路归并排序 基本思想:将序列分为若干有序序列(开始为单个记录),两个相邻有序的序列合并成一个有序的序列,重复进行,直到整个序列有序。 一次归并过程:两个有序序列a、b,目标数组c。每次往目标数组c中放一个记录,a、b序列谁小就放谁。直到一个数组全部放入目标数组,对另一个进行收尾工作。 归并的递归实现: 将数组拆分成单个记录的子序列(... 阅读全文
摘要:
交互排序思想:在待排序的序列中选择两个记录,将他们的关键码进行比较。如果反序则交互它们的位置。 冒泡排序 基本思想:将序列分为有序区,无序区。每次从无序区冒泡一个最小的记录。 冒泡过程:从无序区从后往前扫描,两个相邻记录比较,如果后面比前面的小,则交互。 算法分析 冒泡排序-java实现 /** * 将序列分为两部分:有序区:无序区 * 每趟从无序区 冒泡一个最小的... 阅读全文
摘要:
直接插入排序 将待排序序列分为有序区和无序区,将无序区的元素逐一插入到有序区合适的位置上,直到全部有序。 类似玩牌时整理排的过程。 直接插入排序步骤 1.以数组第一个元素为有序区。 2.将无序区的第一个元素关键码,插入到有序区。 寻找关键码在有序区的目标位置 插入关键码 重复步骤2,直至全部有序。 直接插入排序演示: 算法分析 直接插入排序-java实现 /** * 直接插入... 阅读全文
摘要:
堆的定义 一个完全二叉树中,任意父结点总是大于或等于(小于或等于)任何一个子节点,则为大顶堆(小顶堆)。 堆的数组存储方式 完全二叉树适合采用顺序存储的方式,因此一个数组可以看成一个完全二叉树。 节点编号:树根起,自上层到下层,每层从左至右,给所有结点顺序编号,能得到一个反映整个二叉树结构的线性序列 阅读全文