摘要:
学习计数排序可以了解到空间换时间的思想,其是一种牺牲空间换时间的排序算法,在其特定的场景上,甚至将时间复杂度降到了线性级别。 阅读全文
摘要:
归并排序与与快速排序一样,是采用分治法(Divide and Conquer)的一个非常典型的应用,在排序算法中,同时了解归并排序和快速排序,相互印证,能理解得更深。 阅读全文
摘要:
快速排序是面试当中最常见的排序算法问题了,除了需要理解快速排序的流程,还要理解一些快速排序的代码实现,了解一些优化方法。 阅读全文
摘要:
插入排序在对基本有序的较小序列进行排序时,效率是非常高的,希尔排序针对这一点对插入排序的方式进行了再次优化。 阅读全文
摘要:
插入排对是一个容易被低估的排序算法,虽然其时间复杂度看起来与冒泡排序和选择排序差不多,但是用在相对有序的短序列中却格外的好。 阅读全文
摘要:
选择排序的概念非常容易理解,按照一般的思路,排序就是每次从原来的序列中拿出最小的元素即可,最终得到的序列就是有序序列。 阅读全文
摘要:
冒泡排序是学习排序算法时最先遇到的算法,其形象名称和排序过程最容易记住,很多人会在面试时谈论起,真正理解了冒泡排序算法才能更深入地学习其他排序算法。 阅读全文
摘要:
学习排序算法,除了学习它的算法原理和代码实现之外,更重要的是要学会如何评价、分析排序算法。其实,排序算法主要是从执行效率、内存消耗、稳定性三个方面进行分析。 阅读全文
摘要:
对一个算法做复杂度分析是学习算法必备的知识点,当掌握了如何对一个算法做复杂度分析,在优化算法方面将会如虎添翼。 阅读全文
摘要:
一致性哈希是一种特殊的哈希表使用方式,它解决了简单哈希算法在分布式散列表中存在的动态伸缩问题。其能在保证增加或减少服务器时,数据存储的改变最少,相比传统哈希算法大大节省了数据移动的开销。 阅读全文