标签:排序

JAVA

排序算法之桶排序

herman 4年前 (2020-01-14) 1583浏览

桶排序(Bucket sort)也有人叫做所谓的箱排序。听过的人可能不多,名气不大,但它却是 10 大排序算法中的一部分,足见得它的重要性。今天我们一起来聊聊它。 桶排序的工作原理是将数组分到有限数量的桶里。每个桶再个别排序(有可能再使用别的...

JAVA

排序算法之插入排序

herman 4年前 (2020-01-14) 1263浏览

插入排序是一种最容易理解的排序,我给搓麻将和打牌的大妈都能讲明白。因为,它和打牌一样,每当接到一张牌,我们都选择性的插入到手中已有序的牌中。 插入排序往往会和冒泡排序拿来相比之下,主要原因是,插入排序比冒泡排序更受欢迎!比如,我们把执行一个赋...

JAVA

排序算法之冒泡排序

herman 4年前 (2020-01-13) 1319浏览

最近在阅读 Redis 和 MySQL 底层源码时,发现算法真的很重要。于是,就想先把简单的排序算法再摸一遍,最后整理成一个专栏,方便广大网友查阅! 排序算法(英语:Sorting algorithm)是一种能将一串数据依照特定排序方式进行排...

JAVA

从根上理解order by limit分页数据重复问题

herman 4年前 (2020-01-11) 2059浏览

这个问题相信不少人都遇到过,但很少有人追根溯源。今天我抽出一点时间,来讨论讨论 order by + limit 在什么情况下会出现分页数据重复。 昨天在“CTO”群提问了之后,不少大神都回答的相当正确。我这里结合一下他们的回答,并补充一些内...

JAVA

吐槽一下 Java 8 Lambda 表达式的优缺点

herman 4年前 (2019-12-12) 5149浏览

使用 Java 8 有很长的一段时间了,对它的 Lambda 表达式爱不释手,但是最近发现它的缺点也不少! 原本项目跑的是很顺利的,直到有一天改了某个需求,随手把这个任务分给了其他新同事,谁知新同事看不懂 Lambda,源码阅读起来太困难了!...

JAVA

100亿个数字的位图法快速排序

herman 7年前 (2017-02-20) 4419浏览 0评论

前面一篇文章《100亿个数字的大文件如何快速找出最小的值?》中的排序结果消耗的时间相对来说比位图法排序更长。本章主要为大家介绍一下位图法排序。 位图法定义  位图法就是bitmap的缩写。所谓bitmap,就是用每一位来存放...

JAVA

100亿个数字的大文件如何快速找出最小的值?

herman 7年前 (2017-02-20) 3601浏览 0评论

又到了一年一度的面试季,最近有网友给出一道高级java工程师的面试题。100亿个数字的大文件如何快速找出最小的值?我这里给出一些思路,提供参考! 这道题我们首先想到的是使用外部排序的方式,由于内存的原因,内部排序肯定不被允许,或者不是最佳选...