我的个人博客(xxoo521.com)已上线,不定期持续更新精品文章,点击查看
心谭小站

心谭小站

专注前端与算法,公众号「心谭博客」

摘要: 常见的基础排序有选择排序、冒泡排序和插入排序。众所周知,他们的时间复杂度是 O(n\*n)。 但是,现在要重新认识一下基础排序算法,尤其是“插入排序”:在近乎有序的情况下,插入排序的时间复杂度可以降低到 O(n)的程度。 因此,在处理系统日志的任务中,因为日志记录是按照时间排序,但偶尔会有几条是乱序,此时使用插入排序再好不过。而对于高级排序算法,一个常见的优化就是利用插入排序做局部数据排序优化。 阅读全文
posted @ 2018-09-30 20:05 心谭小站 阅读(771) 评论(0) 推荐(1) 编辑
摘要: 文章图片存储在 ,网速不佳的朋友,请看 "《进击的堆:最大索引堆》" 或者 来我的技术小站 "godbmw.com" 1. 为什么需要索引堆? 堆结构的数据增删操作,需要 操作。虽然可以被优化成每次一次赋值,然而当元素类型是复杂数据机构(例如:类、浮点数、结构体等),赋值操作的消耗不容小觑。 因此, 阅读全文
posted @ 2018-09-30 19:58 心谭小站 阅读(415) 评论(0) 推荐(0) 编辑