ITPub博客

首页 > 人工智能 > 机器学习 > 八大基础算法 自己的通俗理解

八大基础算法 自己的通俗理解

机器学习 作者:dicksonjyl560101 时间:2018-07-28 13:24:08 0 删除 编辑

一些基础算法的理解,包括模拟法的理解。


1.模拟法:
将自然的过程或者语言直白的程序化,比如题目中的求解过程,我们直接程序化模拟求解。


2.字符串处理:
常用的字符串操作,KMP字符串匹配算法(用于复杂度高,需要优化时)。


3.递归:
古之欲明明德于天下者,先治其国;欲治其国者,先齐其家;欲齐其家者,先修其身;欲修其身者,先正其心;欲正其心者,先诚其意;欲诚其意者,先致其知,致知在格物。物格而后知至,知至而后意诚,意诚而后心正,心正而后身修,身修而后家齐,家齐而后国治,国治而后天下平。

当栈底不可见的时候,我们更适合用递归,当然递归也可以转化为 数组或变量和循环,但大多数情况下没有这个必要。
很多简单的递归我们完全可以利用循环来解决。比如很浅的调用之前的数据,且数据量固定。
和循环相比是两种思考的方向。


4.分治法:
将大的问题转化为很多小问题来解决,比如我要给8个数排序,我可以先给两组4个数排序,给4个数排序可以先给两组两个数排序,这样就讲大问题化成了小问题。


5.排序:
熟练的掌握sort()的用法。sort(arr,arr+len,cmp),了解各大排序法的思想。

 
6.枚举法:
当可能的结果不多时,我们可以利用模拟法求解,然后利用数组保存,直接利用枚举法进行匹配。


7.贪心算法:
选择目前的最优解,还要选取合适的策略,此处的最优解可以累积成为最后的最优解。对于一些处理过的值,可以进行标记和保存,便于我们从中选择最优解,并在最优解的基础上更加接近最后的最优解。


8.递推法:
分为顺推和逆推,根据相对应的关系和值进行递推,比如斐波那契数列就是顺推。顺推有点像模拟。


来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/29829936/viewspace-2168550/,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论
行万里路,读万卷书,阅无数人。 吃货一枚,爱吃湘菜,川菜,粤菜与杭帮菜,尝遍天下美食。 摄影爱好者,游遍名川大山,江河胡海,赏遍人间春色。 爱看影,尤其是港片,好莱坞大片。英文名:DicksonJin, 网名:风一样的BOY。精通SAP供应链咨询。2017年开始研习人工智能。

注册时间:2014-08-27

  • 博文量
    2364
  • 访问量
    3537839