![](https://img-blog.csdnimg.cn/20200617111409758.jpg?x-oss-process=image/resize,m_fixed,h_224,w_224)
数据结构与算法
1
XuTengRui
这个作者很懒,什么都没留下…
展开
-
常用排序算法:归并排序与快速排序
一、归并排序 归并排序(MERGE-SORT)是利用归并的思想实现的排序方法,该算法采用经典的分治(divide-and-conquer)策略(分治法将问题分(divide)成一些小的问题然后递归求解,而治(conquer)的阶段则将分的阶段得到的各答案"修补"在一起,即分而治之) 可以看到这种结构很像一棵完全二叉树,本文的归并排序我们采用递归去实现(也可采用迭代的方式去实现)。分阶段可以...原创 2019-02-11 15:05:16 · 391 阅读 · 2 评论 -
常用排序算法:选择排序与冒泡排序
一、选择排序 选择排序是最简单直观的一种算法,基本思想为每一趟从待排序的数据元素中选择最小(或最大)的一个元素作为首元素,直到所有元素排完为止,简单选择排序是不稳定排序。 在算法实现时,每一趟确定最小元素的时候会通过不断地比较交换来使得首位置为当前最小,交换是个比较耗时的操作。其实我们很容易发现,在还未完全确定当前最小元素之前,这些交换都是无意义的。我们可以通过设置一个变量min,每一次比较仅...原创 2019-02-11 15:07:13 · 975 阅读 · 2 评论 -
常用算法:数组元素两两组合(不重复)
scala版本:原创 2019-02-13 22:35:09 · 12253 阅读 · 0 评论