🎉新系列开篇(又挖了个新坑,未完结的暂时也不确定了,没想好完结但也暂时没有新内容(*´I`*),大概是快到了创作瓶颈,开个新篇试试,如果还是没好的想法可能会暂退沉淀自己一段时间)
我想很多初学者肯定会有这种疑惑:
✨许多人都在强调算法很重要,可是我学习到现在,似乎也没觉得有多大影响啊?
❤️算法必然是重要的(每个编程人士都应该或多或少掌握一定的算法)
说句难听的话,如果你觉得算法无用,大概率只是你还没到达需要应用算法的水平
我们来看个简单的例子:
🧡请输出1加到100的结果
这并不是难题,我想大部分人都会直接使用for循环或者while循环解决【图一】
然而这就是最简单的办法了吗?
我们来好好回忆一下小学的时候,是不是都接触过【高斯算法】,即连续的数相加只需要 首尾相加乘上中位数
也就是说,1+2+…+99+100就等于(1+100) * 100 / 2
那么我们来应用到程序上【图二】
我们来整理一下,图一使用了100次加法运算,而图二总共只使用了1次加法1次乘法和1次除法运算
❤️并且图二的算法是不受数据量影响的
你看,如果只是用循环,那么1加到10000就要算10000次,而图二永远是3次!
这就是算法上的碾压,对时间复杂度和空间复杂度都进行了压缩和优化
我想到这里你已经简单了解到了算法的强大
那么在后续的文章中,我会介绍更多常见的算法,诸如二分算法,k近邻,BFS,动态规划等等
算法的学习确实需要一定的门槛,我不能保证人人都能轻松学会,但是我会尽量用通俗易懂的表述来介绍,以最大程度的降低难度,原创不易,还望多多支持[玫瑰]
[灯泡]带来个好消息,本系列下两篇已经在创作中咯,最好的情况这个月内就能更新
[彩虹]pluie
[彩虹]2023-05-11
© 版权声明
文章版权归作者所有,未经允许请勿转载。
相关文章
暂无评论...