在平时的开发中,我们或多或少的会用到排序。在最开始学习语言的时候,我们都会学习基本的排序算法。例如:冒泡排序,基数排序,快速排序,插入排序,选择排序。
2024年07月22日
在平时的开发中,我们或多或少的会用到排序。在最开始学习语言的时候,我们都会学习基本的排序算法。例如:冒泡排序,基数排序,快速排序,插入排序,选择排序。
2024年07月22日
简介:HBase的存储引擎是基于LSM-Like树实现的,更新操作不会直接去更新数据,而是使用各种type字段(put,delete)来标记一个新的多版本数据,采用定期compaction的形式来归档合并数据。这种数据结构将写操作变得非常简单且高效,但是却给读造成了很大的困扰。读取过程需要根据列族读取不同HFile中的数据;还需要根据版本进行过滤,同时对已经标记删除的数据也要进行过滤;硬盘中的数据与MemStore中的数据重合时,还需要执行合并,最后在内存中拼接成一行完整的数据再向上返回。 本文粗粒度地展示了HBase的读取链路,欢迎一起探讨交流~
2024年07月22日
流使程序猿可以在抽象层上对集合进行操作。
什么是外部迭代和内部迭代呢?
个人认为,外和内是相对集合代码而言。
2024年07月22日
读取文件内容,然后进行处理,在Java中我们通常利用 Files 类中的方法,将可以文件内容加载到内存,并流顺利地进行处理。但是,在一些场景下,我们需要处理的文件可能比我们机器所拥有的内存要大。此时,我们则需要采用另一种策略:部分读取它,并具有其他结构来仅编译所需的数据。
2024年07月22日
在MapReduce中,Shuffle和Reduce是数据处理流程的关键部分,特别是在从Map阶段到Reduce阶段的数据转换和传输过程中。让我们详细探讨这两个阶段的工作原理:
2024年07月22日
日常搬砖时,经常有这种情况,根据不同策略对返回前端的列表元素进行各种重排序,于是有了这篇文章,学会使用Guava Orderiing。
2024年07月22日
集合在任何语言都有非常广泛的应用,不同集合底层对应的数据结构和算法决定了它的特征,面试中总会被问到各个集合之间的区别和它们的特点,其实了解底层数据结构和算法后这些问题都会引刃而解,万变不离其宗。本文尝试从底层剖析主流集合的底层结构与实现原理,如无特殊说明,本文源码出自jdk1.8。
2024年07月22日
假设银行提供了一些 API 接口,对参数的序列化有点特殊,不使用 JSON,而是需要我们把参数依次拼在一起构成一个大字符串: