如何面对“算法”的困惑? 推荐
2009-08-31 13:21
323 查看
[align=center]如何面对“算法”的困惑?[/align]
收到一封面对“算法”问题困惑的来信:
我是网络专业 自然 不回接触 软件方向 ,但是 我对JAVA 感兴趣 我想做开发 开发当中用到的 好像和 算法(和那些数学相关的) 没有什么直接关系,都被包装好了...
我还需要 去学习一下 <算法导论>"这些吗?
回信如下:
1、很多都封装好了啊!还需要学习算法吗?
回答:是啊,如果开发一些简单的程序当然可以用包装好了的方法,但是,并不是所有你想干的事情都被人家包装好了啊。如果你只做面向数据库的“增删改查”,基本就不用研究算法了。
2、那“算法”这东西到底是什么?
回答:如果你自己做一个类似数据库的程序怎么办?有人会说,人家都做好了现成的MySQL、SQL-Server、Oracle等等数据库程序,我们直接使用就行了,还做它干什么?
我说:为什么我们就不能自己做一个数据库?
好,要不你自己做一个WebServer如何?
算了,这些都难,那你做一个简单的数组中的数据比对程序,最后形成一个新数组如何?
你只知道,调用JDBC怎么完成这个开发任务?
我给一个定义:
算法其实就是用最简洁最快的方法,“折腾”数组或者其他数据,你的“算法”能力决定着你程序的运行效率。
所谓的“折腾”就是各种针对数组或者其他数据的运算过程,这个过程根据你的需要完成。
3、“算法”可怕吗?
回答:很多同学一听“算法”立马腿软,其实有那么可怕吗?一点不可怕,软件开发是门技术,但同时又是一门艺术,多练练就不怕了。
4、切莫为了“算法”而“算法”
很多同学为了练习“算法”,而特意去找一些“算法”的东西去练,练到最后,还是云里雾里,到底什么时候用到“算法”呢?还是很晕,这就是“算法”和实际应用脱节的结果。
记住:任何程序都是有意义的,没有无意义的程序,不要为了“算法”而去“算法”,任何“算法”都是和实际应用相结合的。
5、回去试着做一道题:
试着做一个方法,传入两个数组和一条SQL语句,返回一个数组。
这个返回的数组时你SQL语句指定的返回条件返回的结果。
试试看,你能做出来这个程序,你的算法应该就没什么问题了。
注意:这个程序很实用,甚至可以理解为一个小型数据库的雏形程序呦!
钟声
2009-8-31
《Java程序员,上班那点事儿》,前言,目录
卓越网销售链接
China-pub销售链接
当当网销售链接
《Java程序员,上班那点事》纪念帖
收到一封面对“算法”问题困惑的来信:
我是网络专业 自然 不回接触 软件方向 ,但是 我对JAVA 感兴趣 我想做开发 开发当中用到的 好像和 算法(和那些数学相关的) 没有什么直接关系,都被包装好了...
我还需要 去学习一下 <算法导论>"这些吗?
回信如下:
1、很多都封装好了啊!还需要学习算法吗?
回答:是啊,如果开发一些简单的程序当然可以用包装好了的方法,但是,并不是所有你想干的事情都被人家包装好了啊。如果你只做面向数据库的“增删改查”,基本就不用研究算法了。
2、那“算法”这东西到底是什么?
回答:如果你自己做一个类似数据库的程序怎么办?有人会说,人家都做好了现成的MySQL、SQL-Server、Oracle等等数据库程序,我们直接使用就行了,还做它干什么?
我说:为什么我们就不能自己做一个数据库?
好,要不你自己做一个WebServer如何?
算了,这些都难,那你做一个简单的数组中的数据比对程序,最后形成一个新数组如何?
你只知道,调用JDBC怎么完成这个开发任务?
我给一个定义:
算法其实就是用最简洁最快的方法,“折腾”数组或者其他数据,你的“算法”能力决定着你程序的运行效率。
所谓的“折腾”就是各种针对数组或者其他数据的运算过程,这个过程根据你的需要完成。
3、“算法”可怕吗?
回答:很多同学一听“算法”立马腿软,其实有那么可怕吗?一点不可怕,软件开发是门技术,但同时又是一门艺术,多练练就不怕了。
4、切莫为了“算法”而“算法”
很多同学为了练习“算法”,而特意去找一些“算法”的东西去练,练到最后,还是云里雾里,到底什么时候用到“算法”呢?还是很晕,这就是“算法”和实际应用脱节的结果。
记住:任何程序都是有意义的,没有无意义的程序,不要为了“算法”而去“算法”,任何“算法”都是和实际应用相结合的。
5、回去试着做一道题:
试着做一个方法,传入两个数组和一条SQL语句,返回一个数组。
这个返回的数组时你SQL语句指定的返回条件返回的结果。
试试看,你能做出来这个程序,你的算法应该就没什么问题了。
注意:这个程序很实用,甚至可以理解为一个小型数据库的雏形程序呦!
钟声
2009-8-31
《Java程序员,上班那点事儿》,前言,目录
卓越网销售链接
China-pub销售链接
当当网销售链接
《Java程序员,上班那点事》纪念帖
相关文章推荐
- 如何利用抖音推荐算法,做到从零到万的粉丝?
- 面对低薪水该如何——网络工程师你是否真的已经倒下(一) 推荐
- 我是如何从勉强写冒泡成长到轻松get百度offer? (内有许多优质算法书籍介绍及推荐)
- 如何面对你—LNMP高并发时502 推荐
- 老黄坐诊记(2):面对新技术,企业如何“化险为夷” 推荐
- 我是如何从勉强写冒泡成长到轻松get百度offer? (内有许多优质算法书籍介绍及推荐)
- 购物网站的推荐算法-个性化推荐算法中如何处理买了还推
- R中如何利用余弦算法实现相似文章的推荐
- 交互设计师和产品经理必读,推荐《QQ阅读 设计之路》讲述了QQ阅读的前世、今生、来世。面对这么多业界的阅读器,QQ阅读如何脱颖而出,占据市场,一起看看QQ阅读的发展过程。
- 如何面对职场 推荐
- 面对复杂的管理如何进行自我调试(项目经理修炼手册第一章) 推荐
- 面对2011百度算法变化如何做好SEO
- 推荐阅读:HP大中华区前总裁孙振耀谈如何面对工作和生活(转)
- 如何安装Enterprise Vault 2007 推荐
- 如何从Exchange 2000/2003 迁移到Exchange 2007 推荐
- 如何更改MFC按钮的背景色 推荐
- 如何把一个web集群由HTTP转换为HTTPS(LVS+HAProxy+SSL) 推荐
- 推荐算法——基于用户的协同过滤算法
- 做事情需要坚持需要毅力更加需要观察和方法。(人生会遭遇许多事,其中很多是难以解决的,这时心中被盘根错结的烦恼纠缠住,茫茫然不知如何面对?如果能静下心來思考,往往会恍然大悟。 )
- 如何选择机器学习的算法及适应解决的问题