>>分享数据结构和算法相关的知识和技术 书籍支持  卫琴直播  品书摘要  在线测试  资源下载  联系我们
发表一个新主题 开启一个新投票 回复文章 您是本文章第 19473 个阅读者 刷新本主题
 * 贴子主题:  如何面对“算法”的困惑? 回复文章 点赞(0)  收藏  
作者:mary    发表时间:2020-03-15 18:14:11     消息  查看  搜索  好友  邮件  复制  引用

如何面对“算法”的困惑?

收到一封面对“算法”问题困惑的来信:


我是网络专业 自然 不回接触 软件方向 ,但是 我对JAVA 感兴趣   我想做开发 开发当中用到的 好像和 算法(和那些数学相关的) 没有什么直接关系,都被包装好了...

我还需要 去学习一下 <算法导论>"这些吗?

     回信如下:

     1、很多都封装好了啊!还需要学习算法吗?

    回答:是啊,如果开发一些简单的程序当然可以用包装好了的方法,但是,并不是所有你想干的事情都被人家包装好了啊。如果你只做面向数据库的“增删改查”,基本就不用研究算法了。

     2、那“算法”这东西到底是什么?

    回答:如果你自己做一个类似数据库的程序怎么办?有人会说,人家都做好了现成的MySQL、SQL-Server、Oracle等等数据库程序,我们直接使
    用就行了,还做它干什么?

    我说:为什么我们就不能自己做一个数据库?

     好,要不你自己做一个WebServer如何?

    算了,这些都难,那你做一个简单的数组中的数据比对程序,最后形成一个新数组如何?

    你只知道,调用JDBC怎么完成这个开发任务?

           我给一个定义:


          算法其实就是用最简洁最快的方法,“折腾”数组或者其他数据,你的“算法”能力决定着你程序的运行效率。
       所谓的“折腾”就是各种针对数组或者其他数据的运算过程,这个过程根据你的需要完成。

    
3、“算法”可怕吗?


回答:很多同学一听“算法”立马腿软,其实有那么可怕吗?一点不可怕,软件开发是门技术,但同时又是一门艺术,多练练就不怕了。

4、切莫为了“算法”而“算法”


很多同学为了练习“算法”,而特意去找一些“算法”的东西去练,练到最后,还是云里雾里,到底什么时候用到“算法”呢?还是很晕,这就是“算法”和实际应用脱节的结果。

记住:任何程序都是有意义的,没有无意义的程序,不要为了“算法”而去“算法”,任何“算法”都是和实际应用相结合的。

           5、回去试着做一道题:

           试着做一个方法,传入两个数组和一条SQL语句,返回一个数组。

           这个返回的数组时你SQL语句指定的返回条件返回的结果。

           试试看,你能做出来这个程序,你的算法应该就没什么问题了。

          注意:这个程序很实用,甚至可以理解为一个小型数据库的雏形程序呦!


----------------------------
原文链接:https://blog.51cto.com/useway/197247

程序猿的技术大观园:www.javathinker.net



[这个贴子最后由 flybird 在 2020-03-16 12:11:58 重新编辑]
网站系统异常


系统异常信息
Request URL: http://www.javathinker.net/WEB-INF/lybbs/jsp/topic.jsp?postID=2867

java.lang.NullPointerException

如果你不知道错误发生的原因,请把上面完整的信息提交给本站管理人员