数据结构
文章平均质量分 72
张侦毅
The Minute You Think Of Giving Up, Think Of The Reason Why You Held On So Long.
展开
-
线性表——对顺序表的操作
数据结构,线性表,对顺序表的操作。转载 2016-11-20 16:10:27 · 477 阅读 · 0 评论 -
数据结构——循环队列
这里所编写的就是一个循环队列,具体的说明在程序的注释里就已经写明了,并配有相应的测试代码。Queuepackage com.lyc.linearTable.queue;import com.lyc.util.ObjectHolder;public interface Queue { /** * 队列的初始化 * @param size ...原创 2018-04-08 16:09:20 · 300 阅读 · 0 评论 -
数据结构——栈
之前写了很多数据结构的算法,这里就不过多解释,直接上代码。Stackpackage com.lyc.linearTable.stack;import com.lyc.util.ObjectHolder;/** * 这里是栈运算 */public interface Stack { /** * 初始化一个空栈 * @param size ...原创 2018-04-07 10:15:31 · 344 阅读 · 0 评论 -
在java中树形列表信息的查询
传统的查询方式 在IT的项目开发中,有时我们会经常遇到树形列表数据的查询等的相关操作,比如下面的情况就是如此:传统的查询方式 树形列表数据最基本的展示一共需要三个字段,分别是id,pId以及name。其中id是该条信息的主键,一般是自增的,并且不允许重复。pId是该条信息所归属的父节点的id,该pId允许重复,而顶级的节点其由于没有父节点,故其父节点字段往往以0...原创 2018-05-11 11:57:16 · 5456 阅读 · 0 评论 -
求List,Map,Set的交集,并集与差集
应用场景ListMap集合操作数据准备交集并集差集Map集合操作数据准备交集并集差集(左侧)差集(右侧)Set集合操作数据准备交集并集差集应用场景 在大数据的背景下,我们在做项目的时候往往使用单表在数据库中查询数据,然后多表在service层进行关联操作。比如说下面的情况就是如此,在这里我并不是展开讲多表之间如何实现解耦的单表查...原创 2018-05-30 13:44:09 · 8796 阅读 · 5 评论 -
数据库单表查询,list分页关联展示
应用背景代码实现实体类ClassStudentPageQueryClassStudentDTO测试代码测试结果应用背景 一般我们在开发数据量不是很大的中小型企业系统来说,直接使用SQL关联,多表联合查询就可以了,因为这样在项目开发过程中非常的高效。但是一旦在遇到大数据量的背景前提下,原始的关联查询方式逐渐的显现出了越来越多的弊端。我们引入海尔电...原创 2018-06-02 13:12:38 · 1367 阅读 · 0 评论 -
数据库分表
文章目录分表思路分表的背景分表的计算分表的存储规则分表的索引值分表思路分表的背景 在我们保存数据时,有时候会遇到保存大数据量的情况。而我就遇到过这种情况,比如说存储卫星定位数据,初步估计,其在3个月内的数据量大致为2亿条。 至于为什么是3个月,这是由于该需求处于探索阶段,先整3个月的试用期,待试用期过后进行相应评估,是继续做,还是停掉,因而暂时也只需要存储3个月的数据量。 而如果采...原创 2019-02-27 20:56:46 · 896 阅读 · 2 评论 -
伪量子加密算法
文章目录量子加密什么是量子加密量子加密的特点量子加密的使用方法伪量子加密源码结果量子加密什么是量子加密 任何一串信息都可以表示成一串二进制字符,也就是由0或1组成的字符串。对于由01组成的字符串的每位数字a,我们都可以给它一个对应的密钥k,这个k也是一个0或1的数字,根据a和k就可以算出对应的密文b,它也是一个0或1的数字。这对应的规则就是,如果k = 0,那么b就等于a,如果k = 1,...原创 2019-04-07 16:03:37 · 1917 阅读 · 1 评论 -
递归查询树节点的完整编号
文章目录编写背景源码结果编写背景 由于最近需要做文件的文档归类编号管理。比较理想的情况是这样的:1个公司下有多个项目,1个项目下有多个文档。但是实际的情况却不是这样的,实际的情况是公司、项目、案卷等是一种多级无限嵌套结构,而文件挂在最终的案卷下,而此时我们需要求得此处文件的文档归类编号,以便于文件查找。而在原始的数据中,并没有此功能,也就是说根本就没有当前所要查询的树节点中的层级内节点顺序编...原创 2019-04-07 16:48:17 · 2124 阅读 · 0 评论 -
将系统日志文件写入到数据库中
文章目录开发背景需求背景源文件格式分析解决源码运行结果开发背景需求背景 由于公司在外面有很多产品,而公司的产品是部署在远程服务端的,在客户使用的过程中,为了解决随机出现的问题,我们总不能一出现问题就大老远跑过去解决,这样无论是时间还是人力成本都是非常高昂的。在此处,我们的解决办法就是通过抓取远程开放路径下的系统日志文件,然后在本地查看解决。源文件格式 源日志格式如下: 日志内容...原创 2019-04-23 18:07:11 · 3946 阅读 · 0 评论 -
读取数据表中的文件字节流
文章目录开发背景需求背景源码核心依赖Java源码工具类通用模块实体类DaoService核心库函数Controller配置文件测试结果开发背景需求背景 由于以前的文件存在于SQLServer数据表中,而这种 源码核心依赖<dependencies> <dependency> <groupId>org.spri...原创 2019-04-25 10:37:37 · 1195 阅读 · 0 评论 -
数据迁移——将数据由SQLServer迁移到PostgreSQL中
文章目录开发背景源码核心依赖Java源码运行结果开发背景源码核心依赖<dependencies> <!-- eureka注册中心 --> <dependency> <groupId>org.springframework.cloud</groupId> <artifactId&...原创 2019-04-25 12:19:16 · 5834 阅读 · 2 评论 -
蒙提霍尔问题
文章目录问题起源源码实现源码结算结果分析问题起源 三门问题(Monty Hall problem)亦称为蒙提霍尔问题、蒙特霍问题或蒙提霍尔悖论,大致出自美国的电视游戏节目Let’s Make a Deal。问题名字来自该节目的主持人蒙提·霍尔(Monty Hall)。参赛者会看见三扇关闭了的门,其中一扇的后面有一辆汽车,选中后面有车的那扇门可赢得该汽车,另外两扇门后面则各藏有一只山羊。当参赛...原创 2019-08-13 21:15:52 · 1232 阅读 · 0 评论 -
数据结构——线性表——顺序表
线性表是最常用且最简单的数据结构。简而言之,一个线性表是n个数据元素的有限序列。至于每一个元素的具体含义,在不同的情况下各不相同,它可以是一个数字或一个符号,也可以是一页书,甚至是更复杂的信息。原创 2017-09-12 22:13:36 · 769 阅读 · 0 评论 -
线性表——顺序表——时间复杂度计算2
接上一篇文章继续分析线性表——顺序表——时间复杂度计算 在之前的文章中的示例1和示例2中,我们通过观察可以发现,当在顺序存储结构的线性表中某个位置上插入或删除一个数据元素时,其时间主要耗费在移动元素上(换句话说,移动元素的操作为预估算法时间复杂度的基本操作),而移动元素的格式取决于插入或删除元素的位置。 假设pip_i是在第i个元素之前插入一个元素的概率,则在长度为n的线性表中插入一个元原创 2017-09-13 22:09:25 · 11097 阅读 · 1 评论 -
线性表——顺序表——时间复杂度计算
数据结构的核心思想是通过数据结构的思维来优化代码的算法,以此来提升程序的执行性能,缩短程序执行的时间。下面我来举两个例子,以此来说明数据结构的时间复杂度计算问题。原创 2017-09-13 09:38:55 · 12948 阅读 · 1 评论 -
环形队列——对int类型的数据进行操作
采用C++语言编写的数据结构,环形队列,实现的功能是对int类型的环形队列的相关操作。转载 2016-11-20 16:17:21 · 729 阅读 · 0 评论 -
环形队列——用户对用户自定义数据类型的相关操作
采用C++语言实现的数据结构,环形队列。其与之前版本的区别主要就在于用户可以采用自己自定义的数据类型进行相关操作。转载 2016-11-20 16:22:11 · 471 阅读 · 0 评论 -
栈
采用C++语言实现的数据结构,栈。实现的功能是对于栈的相关操作。转载 2016-11-20 16:33:55 · 498 阅读 · 0 评论 -
栈——栈模版
采用C++语言实现的数据结构,栈模板,通过栈模板我们可以用来进行各种数据类型的栈的相关操作。转载 2016-11-20 16:37:25 · 525 阅读 · 0 评论 -
栈——数据转换
采用C++语言实现的数据结构,栈,数据类型转换,实现的功能是将十进制转换成相应的二进制、八进制、十六进制的数据类型。转载 2016-11-20 16:43:29 · 589 阅读 · 0 评论 -
栈——数据转换2
采用C++语言实现的数据结构,栈,利用栈原理实现对于数据类型的相关转换。转载 2016-11-20 16:47:03 · 419 阅读 · 0 评论 -
栈——括号匹配
采用C++语言实现的数据结构,栈,利用栈原理实现的括号匹配。转载 2016-11-20 16:50:36 · 815 阅读 · 0 评论 -
线性表——顺序表(Coordinate)
采用C++语言编写的数据结构,线性表。实现的功能是对于用户自定义的数据类型的相关操作。转载 2016-11-20 16:55:27 · 602 阅读 · 0 评论 -
currentTimeMillis,getTimeInMillis与getTime获取当前时间戳耗时比较
在生成当前的时间戳的方面,我们有多种方法,比如说currentTimeMillis,getTimeInMillis与getTime,在生成时间戳方面我们总是想生成的时间越短越好,生成的时间消耗越短,这意味着所得的信息也就越精确,所以说下面我将重点比较这几种方法中的时间消耗问题.原创 2017-03-18 22:03:56 · 14812 阅读 · 1 评论 -
求文件的MD5算法
MD5即Message-Digest Algorithm 5(信息-摘要算法5),用于确保信息传输完整一致。是计算机广泛使用的杂凑算法之一(又译摘要算法、哈希算法),主流编程语言普遍已有MD5实现。将数据(如汉字)运算为另一固定长度值,是杂凑算法的基础原理,MD5的前身有MD2、MD3和MD4。原创 2017-03-18 22:53:46 · 1371 阅读 · 0 评论 -
红包生成算法
这是一个红包生成算法的java程序,其原理是这样的.我们假设红包的总金额是10元,纷发次数是10次,那么平均每一个人得到的就是1元,这个大家都是知道的,然后让这十个红包两两之间交换一个随机数,该随机数的绝对值大于等于0,小于平均数,每次交换的数字可能是正数,也可能是负数,这样十个红包总共需要交换9次即可.假设红包1与红包2随机交换的数字是r1,则红包1加上r1,红包2减去r1;假设红包2和红包3随原创 2017-04-14 21:58:15 · 1493 阅读 · 0 评论 -
数值转换成大写金额运算
在记账时,我们经常用大写汉字代替数字进行记账,而我们在数值运算时往往是采用的阿拉伯数字进行的计算,这时我们就需要用到将阿拉伯数值转换成大写金额的数值转换工具,而这篇代码讲的就是这种数值换算运算.它的大体思想是这样的一、获取数字阿拉伯数值,假如说该数值是120000,那自然不用说了,如果是1.2 sw(十万),就应该首先将其转换成120000.二、将该数值转换成大写金额,得到如下原创 2017-04-15 23:04:35 · 1449 阅读 · 0 评论 -
树形数据结构——ClosureTable
文章目录思想来源源码文件目录结构项目源码测试源码测试结果思想来源 在现实的项目开发中,我们经常会用到树形数据结构,对于什么是树形数据结构,具体可以参考如下的两篇博文:ClosureTable实现高效无限分类贡献一个 Laravel 树形结构管理包 ClosureTable 在看完上面两篇博文的基础上,我们就对树形数据结构,尤其是对ClosureTable有了更加清晰的认识,既然项...原创 2019-08-14 17:43:43 · 1433 阅读 · 0 评论