![](https://img-blog.csdnimg.cn/20201014180756918.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
算法
持之以恒2016
每一个选择,都是当下最好的决定
展开
-
冒泡排序
说明数据交换目前是从小到大进行排序,因此左值大于右值,那么进行数据交换。如果需要从大到小进行排序,需要使用小于号,即left<right。//数据交换,返回值 true 有数据返回 false 无数据返回bool swap(int &left, int &right){ if (left > right) { int temp = left; left = right; right = temp;原创 2021-03-01 17:22:43 · 86 阅读 · 0 评论 -
聚类算法
简介由上图可知,我们需要把人群划分为四个类型的群组Cluster,高收入高债务、高收入低债务、低收入高债务、低收入低债务。我们如果需要把这些拥有相似属性的个体划分到群组Cluster里面,那么就可以使用聚类算法。操作步骤随机选择质点,作为群组Cluster里面的参考点C1,后期将用于计算群组里所有点到该参考点的距离,设参考点到每个点的距离为D(x)由上图可知,我们可计算出来C1到所有点的距离D(x),最右边的距离最大,我们把它设为C2,作为第二个质点。然后,我们需要计算出所有点到每个质点原创 2020-06-19 14:44:10 · 518 阅读 · 0 评论 -
分治法学习笔记
解题步骤分解:将要解决的问题分解成若干个规模较小、相互独立、与原问题形式相同的子问题。治理:求解各个子问题。由于各个子问题与原问题形式相同,只是规模较小而已,当子问题划分得足够小时,就可以用较简单的方法解决。合并:按原问题的要求,将子问题的解逐层合并并构成原问题的解。总结:将一个难以直接解决的大问题,分割成一些规模较小的相同问题,以便各个击破,分而治之。二分搜索技术猜数游戏如果在...原创 2019-02-22 14:31:24 · 153 阅读 · 0 评论 -
Dijkstra算法(迪杰斯特拉算法)
对比算法好坏需要考虑的因素执行算法所耗费的时间执行算法所耗费的存储空间Dijkstra算法(迪杰斯特拉算法)迪杰斯特拉算法是由荷兰计算机科学家狄克斯特拉于1959年提出的,是从一个顶点到其余各顶点的最短路径算法,解决的是有权图中最短路径问题。迪杰斯特拉算法的主要特点是以起始点为中心向外层层扩展,直到扩展到终点为止。迪杰斯特拉算法的成功率是最高的,因为它每次必能搜索到最优路径。但迪杰...原创 2019-06-24 18:06:30 · 42304 阅读 · 43 评论