经典排序算法之三 快速排序
快速排序是一种效率很高的排序方法,其采用了一种分治的策略。比起归并排序,快速排序是 “in place”的比较,所以没有多余的空间内存占用,CSDN 上 有人概括其为 “挖坑填数+分治法”,非常推荐去看一看。完整的代码可以到我的 GitHub 上查看 Algorithm。
快速排序是一种效率很高的排序方法,其采用了一种分治的策略。比起归并排序,快速排序是 “in place”的比较,所以没有多余的空间内存占用,CSDN 上 有人概括其为 “挖坑填数+分治法”,非常推荐去看一看。完整的代码可以到我的 GitHub 上查看 Algorithm。
行为型设计模式共有 11 个,本文简单梳理其中四个:责任链模式,命令模式,解释器模式,迭代器模式。如有不同见解,或者想补充的,欢迎评论指出。完整的 23 种设计模式可移步我的 GitHub—>DesignPattern。
本文继续梳理结构型设计模式剩下的三个:外观模式,享元模式,代理模式。如有不同见解,或者想补充的,欢迎评论指出。完整的 23 种设计模式可移步我的 GitHub—>DesignPattern。
结构型设计模式共有 7 个,本文简单梳理其中四个:适配器模式,桥梁模式,组合模式,装饰者模式。如有不同见解,或者想补充的,欢迎评论指出。完整的 23 种设计模式可移步我的 GitHub—>DesignPattern。
归并,是将两个已经排好序的数组合并为一个有序的数组。归并排序,采用了分治法,通过递归,将元素一层层分解开,直到不能分解了,再一层层左右比较后合并出一个有序数组。完整的代码可以到我的 GitHub 上查看 Algorithm。
插入排序,简单来说,就是将一组数据一个一个地插入到已经排好序的数组中,从而形成一个有序数组。完整的代码可以到我的 GitHub 上查看 Algorithm。