学前端,这几个算法你必须知道

1.杨辉三角:

杨辉三角,是二项式系数在三角形中的一种几何排列。在欧洲,这个表叫做帕斯卡三角形。帕斯卡(1623----1662)是在1654年发现这一规律的,比杨辉要迟393年,比贾宪迟600年。

JavaScript版本:

学前端,这几个算法你必须知道_第1张图片运行结果:

学前端,这几个算法你必须知道_第2张图片Java版本:

学前端,这几个算法你必须知道_第3张图片运行结果:

学前端,这几个算法你必须知道_第4张图片

其中二位数组用js去理解,就是第一个参数为有几个对象,第二个参数为对象中有几个值,相当于开辟空间的过程.

2.插入排序:

原理是逐个检测,最大的往最后丢!每次减少一次检测!

JavaScript版本:

学前端,这几个算法你必须知道_第5张图片但其实在javascript中有已经有封装好处理类似数组的方法:

学前端,这几个算法你必须知道_第6张图片

Java版本:

学前端,这几个算法你必须知道_第7张图片最后运行结果为3 17 30 35 48 !

3.冒泡排序:

原理在于逐个双双检测,交换两两之间的大小关系,其实最终的目的也是逐轮把最大数丢最后面.
JavaScript版本:

学前端,这几个算法你必须知道_第8张图片Java版本:

学前端,这几个算法你必须知道_第9张图片

4.二分算法:

就是不断折半~~查看当前值对于检索值的大小判断 只能对已经排序好的数组
学前端,这几个算法你必须知道_第10张图片

5.Object去重:

学前端,这几个算法你必须知道_第11张图片

喜欢本文的,可以关注通哥 - 知乎,有问题可以加群交流

欢迎大家来“web前端开发”专栏投稿

你可能感兴趣的:(JS)