首页
首页
沸点
课程
直播
活动
竞赛
商城
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
确定删除此收藏集吗
删除后此收藏集将被移除
取消
确定删除
确定删除此文章吗
删除后此文章将被从当前收藏集中移除
取消
确定删除
编辑收藏集
名称:
描述:
0
/100
公开
当其他人关注此收藏集后不可再更改为隐私
隐私
仅自己可见此收藏集
取消
确定
算法之路
订阅
哈雷哈雷_Wong
更多收藏集
微信扫码分享
微信
新浪微博
QQ
9篇文章 · 0订阅
算法之路----归并排序
归并排序是建立在归并操作上的一种有效的排序算法,该算法是采用分治法的一个非常典型的应用。分治法就是将一个大问题分解成小问题然后递归求解,然后再将小问题的结果合并,最终得到问题的解。 归并操作,也叫归并算法,指的是将两个有序的序列合并成一个有序的序列的方法。 第一步:申请空间,使…
算法之路----简单排序
排序算法在各种语言中都有已经封装好的API可使用了。但是排序算法内部怎么实现的?有哪些常用的排序算法我们还是需要了解一下的。 这里会先介绍一下简单排序算法:冒泡排序、选择排序、插入排序。 假设Ki = Kj(1≤ i ≤ n, 1≤ j ≤ n),且在排序前的序列中ri领先于r…
算法之路----汉诺塔(又称河内之塔)
汉诺塔是很简单也很经典的算法之一。 有三根杆子A,B,C 。A杆上有N个(N>1)穿孔圆盘,盘的尺寸由下到上依次变小。要求按下列规则将所有圆盘移至C杆: 2 大盘不能叠在小盘上面。 提示:可将圆盘临时置于B杆,也可以将A杆移除的圆盘重新移动回A杆,但都必须遵循上述两条规则。 最…
算法之路----查找斐波纳契数列中第 N 个数
查找斐波纳契数列中第 N 个数。 前2个数是 0 和 1 。 第 i 个数是第 i-1 个数和第i-2 个数的和。 0, 1, 1, 2, 3, 5, 8, 13, 21, 34 ... 斐波那契数列满足公式f(n) = f(n-1) + f(n-2),n > 0。这里我们的第…
算法之路----快速排序
快速排序是对冒泡排序的一种改进。 快速排序由C. A. R. Hoare在1960年提出。它的基本思想是:通过一趟排序将要排序的数据分割成独立的两部分,其中一部分的所有数据都比另外一部分的所有数据都要小,然后再按此方法对这两部分数据分别进行快速排序,整个排序过程可以递归进行,以…
算法之路----堆排序
堆排序是利用堆这种数据结构而设计的一种排序算法,堆排序是一种选择排序,它的最坏,最好,平均时间复杂度均为O(nlogn),它也是不稳定排序。 而堆是具有以下性质的完全二叉树:每个结点的值都大于或等于其左右孩子结点的值,称为大顶堆;或者每个结点的值都小于或等于其左右孩子结点的值,…
算法之路----希尔排序
希尔排序(Shell's Sort)是插入排序的一种又称“缩小增量排序”(Diminishing Increment Sort),是直接插入排序算法的一种更高效的改进版本。希尔排序是非稳定排序算法。该方法因D.L.Shell于1959年提出而得名。 1.插入排序在对几乎已经排好…
算法之路---呈现O(logN)型的三个算法
我们知道算法的执行效率,可以从它的时间复杂度来推算出一二。而典型的时间复杂度有哪些类型呢? 由上图,可以看出,除了常数时间复杂度外,logN型的算法效率是最高的。今天就介绍三种非常easy的logN型算法。 通过上面的程序可以看出,要算出时间复杂度,就是求出while循环的次数…
算法之路----求最大子序列
对于IT行业者来说,刚参加工作,还能找点借口,说自己不擅长算法。可是工作三年以上的IT开发者,还说自己不会算法,不会设计模式就说不过去了。所以最近开始撸算法和设计模式,重新开一个集记录算法的学习之路。算法在用户量比较少,或者计算量比较小的时候,影响确实不大,但是到达一定数量级的…