- 博客(10)
- 资源 (6)
- 收藏
- 关注
原创 实现一个简单的234树
234树也是一种平衡树,但是相对于红黑树来说它的代码复杂度要低一些,它能做到树的平衡最主要的原因是它会进行合理的分裂。1. 定义一个数据项类public class DataItem { public int key; public DataItem(int key){ this.key = key; } public void dis...
2018-11-07 14:40:30 779
原创 用哈夫曼树实现对字符串进行编码从而做到对字符内容的压缩
哈夫曼树是一个二叉树,它通过遍历树的叶子节点实现对相应字符的编码。通常情况下这些编码出来的编码是0和1组成的串,但不是每个字符出来的编码长度都一样,而是出现次数最多的字符的编码长度最小,最后我们把这些二进制串转为了字节数组进行储存或者网络传输以达到压缩的目的。当然要解码这些串还是需要一个哈夫曼编码与字符一一对应的表,当我们在一个整体的系统里使用这种技术的时候,我们通过提前建立好一个包括接近全部可能...
2018-10-25 09:38:59 3237 2
原创 二叉树对于储存有序的海量数据、快速查找、快速删除等操作十分有用
二叉树是树结构里运用最广的也是最容易理解的,对于树的遍历通常有前序、中序、后序,一般二叉树用中序遍历比较多,相当于按升序进行遍历。学习二叉树有很好处,因为很多数据库都运用了此类思想和相关优化的二叉树结构。1 首先定义一个Node节点public class Node { public int key; public Node leftNode; //<key ...
2018-10-16 17:19:47 540
原创 归并排序效率惊人,10万条数据的数组排序只需20毫秒
归并排序充分利用递归的效率,提升排序速度,当内存够用时,用此方法进行大数据量排序比较适合import java.util.Random;//归并排序,两两递归的试一半一的分隔直接到只有一个元素时返回,然后对两两的有序数组进行归并排序,效率相当高public class MergeSort { /** * @param sourceArray 要排序的源数据 ...
2018-10-15 11:44:49 4455
原创 用java设计一个简单基于数组的整型栈并考虑扩容与线程安全
平时我们开发应用程序时会遇到使用栈的情况,通常情况下我们一般使用java sdk包里自带的栈,因为官方提供的肯定足够优秀。不过我们做为程序员,还是有必要去了解它的原理或实现,我们可以自己实现简单点的栈,并可以在简单的基础之上去设计出足够优秀与复杂的栈类型出来。import java.util.concurrent.locks.Lock;import java.util.concurrent...
2018-10-11 15:32:30 685
原创 java算法学习记录之插入排序法
前面我记录了冒泡、选择排序法,其实在大数据量的排序面前,插入排序比前两则都要优秀,算法思路稍微复杂一点点而已。import java.util.Random;//插入排序,此方法的原理是从数组的第二个元素开始标记依次与前面的每个元素相对,找到第一个比自己的小的数,然后插入进过//当然在找到之前这个大于当前标记的数都依次往后移一个public class InsertSort { ...
2018-10-11 15:20:00 122
原创 java算法学习记录之二分查找法
二分查找法对于有序数组来说十分好用,对于长度比较大的数组来说比较适合此算法。本文代码针对一个已按升序排好的数组进行元素查找,当然,实际情况应该是先对一个数组进行排序,排序方法多种多样,选择合适的一种就行了。//二分查找public class TwoPointsSearch { public static void main(String[] args) { //...
2018-10-11 15:16:58 98
原创 java算法学习记录之选择排序法
选择排序相比冒泡排序法来说效率更高一些,查询次数其实差不多,但由于减少了数据交换的次数效率更高一些,特别是在对大数组进行排序时它会是更好的选择。import java.util.Random;//选择排序,它与冒泡排序一样需要O(n2)的次数,但是交换次数少得多,这在大数据量排序最效率更高public class SelectSort { public static void ...
2018-10-11 11:23:23 109
原创 java算法学习记录之冒泡排序法
从这篇文章开始我将依次记录我学习数据结构并用java来实现相关算法的源代码,算是对自己学习的一个记录,也希望对其他初学者有帮助,大家一起进步!同时我保证我写的代码是自己在idea里手写并测试通过。此篇文章我记录最简单也是最常用的冒泡排序法,后面再记录其它排序方法。import java.util.Random;//冒泡排序public class MaopaoSort { ...
2018-10-11 10:29:44 155
原创 分享一个基于java的简单文本日志记录器,可以达到每秒10万条的写入速度
这是本人在CSDN上的第一篇博客,以后我将在这里分享一些我个人觉得有用的小组件、框架、原创项目源码等东西。简单介绍一下自己,我工作10来年,早几年从事.net相关的开发工作,近几年除了.net以久开始自学习了java相关平台的开发(公司项目所需)。本人学历、技术水平都一般,当然去不了什么互联网大厂,但是我还是比较喜欢学习新的东西以及尽可能去多研究一下以提高自己的整体实力。对我来说去技术大厂早已不是...
2018-08-23 14:40:26 1528 1
熊猫找券,找遍电商平台
2020-05-12
抢实惠_1.4.rar
2020-05-01
触摸屏电子白板v2.0
2020-04-30
抢实惠_v1.2.rar
2020-04-30
java单类文本日志记录器,不依赖任何第三方API,不用配置
2020-04-23
windows触摸屏电子白板小程序
2020-04-23
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人