| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1524 人关注过本帖
标题:算法怎么学
只看楼主 加入收藏
tianyagzw
Rank: 1
等 级:新手上路
帖 子:4
专家分:2
注 册:2013-8-5
收藏
得分:2 
买几本算法的书,还有《数据结构》什么的,多看看,照着书做练习,一点一点来,学完一部分可以去,北大acm,杭电acm等oj上去做相应的练习题,我就是这么做的,感觉不错。
2013-08-05 19:37
丶弱水彡千
Rank: 5Rank: 5
来 自:地狱十九层
等 级:职业侠客
威 望:2
帖 子:203
专家分:369
注 册:2013-6-16
收藏
得分:2 
算法  太恶心了  一般我要找算法我就去百度和论坛什么的  实在没什么信心了

这个怎么玩
2013-08-05 20:22
apologz
Rank: 2
等 级:论坛游民
帖 子:56
专家分:24
注 册:2013-2-4
收藏
得分:2 
以下是引用beyondyf在2013-8-5 13:02:11的发言:

兄弟,你这例子举的可有点欲盖弥彰。

会摆牌就等于会打牌么?怎么不举打牌的例子?如何规划自己的出牌策略,如何根据对手出的牌、出牌的顺序、甚至出牌时的表情预测场上的局势?

这个吧,也许我没有正确地理解兄弟你想表达的意思,但就我接收到的信息里充满了IT版的读书无用论。

而且你这回答和楼主的问题根本是两码事。他问如何学,你却说学那玩意儿没用。

算法这东西,很宽泛,生活中无处不在,它就是行为方案的另一个学术代名词。即便不去专门学习我们也知道其中最基础的那部分东西。也许你不知道它的学术定义甚至没有想过它的存在,但你确实一直在用它。

街头卖菜的大妈不知道什么是四则运算,但从没给我找错过钱,相比之下我需要掏出手机戳半天才能算出来。

给我装修的工人哪知道什么是力矩,但他们用一套滑轮将沙子水泥通过我家窗户运进来,这套系统人家用的挺溜的。

给我改水电的师傅我问他压强的单位是什么他答不上来,但我相信他的施工质量没有问题,验收时给管子里通入所谓“两公斤”的压力,管子没有跑水的地方。

举这些例子不知道是不是有人更觉得算法没必要学?

诚然,如果你从事的就是这类工作,对其它方面也没什么追求,那对你而言,算法,确实没必要学。

我也不想鼓吹算法多么多么有用。有没有用这东西随着价值观的不同因人而异,何必强求别人接受你的价值观呢?

同样,你觉得算法没什么用也不必要求别人不学吧。让我惊讶的是论坛里这样的人还不在少数。作为一门学科,你不喜欢可以不学,但为什么仇恨喜欢它的人呢?

对于这一类人通过查阅他们参与讨论的主题以及他们发言的内容倾向,我还做过一些分析。不过就不在这里分享结论了,毕竟这个结论的主观因素还是比较多的,而且这个分析本身也不过是一个一时兴起的娱乐活动,算是我的一次行为学实践吧。

注明一下,上文中的“你”是泛指,而非特指。写这些字也并不是回答楼主的疑问,只是针对peach的观点而阐明一下我的异议。
楼主的疑问我回答不了,学习这东西也是因人而异的,适合我的不一定适合你。3楼给出了一个方案,你可以试试。


难觅知音、同一个编程梦,我们共同进步。
2013-08-05 21:55
apologz
Rank: 2
等 级:论坛游民
帖 子:56
专家分:24
注 册:2013-2-4
收藏
得分:0 
以下是引用peach5460在2013-8-5 13:11:02的发言:

我只是觉得楼主把算法想得太崇高了...
按他的说法,就是看得懂别人的代码,自己写却不知道怎么下手...

我只是想表达,算法只是一套处理问题的方法,并不是多神秘的东西...
自己平时怎么处理问题,就怎么写代码不就好了
可能我表述不是太清楚...
我也没说过算法无用论...

至于那个摆牌?
我想表达的意思是...
你没学过插入排序,照样摆得蛮好...那么为什么假如要你写插入排序却写不出来?
归咎于你没学过算法?还是别的什么?
算法不是在你心中么?

PS:补充一句...
你看一下楼主发过的帖子...看看他的水平...他只是一个初学者...
他现在发这篇帖子的目的,只是因为自己学了一段时间,碰到问题却不知道怎么下手,所以感到恐慌...这是我的分析...
我认为(这个观点不会改变)...这个时候,你让他去看算法(算法思想除外)无疑就是拔苗助长...
你让一个指针都还不知道怎么回事的人去看如何实现链表,二叉树?
数组都认不全的人去看懂,实现排序?

我只是想声明,算法不是一个洪荒猛兽...不是多么高深的东西...
先学好自己的基础,再来谈这个...

PPS:我的算法很烂,烂到无以复加...真的...

我觉得为什么要懂了数组,排序等等才去学算法呢。算法应该是首先接触的吧。对了,楼主.其实以前我也不知道怎么入手,现在发现这样发帖是作用不大的,别人不了解你欠缺什么,需要的是自己发现并纠错。自己了解自己。

难觅知音、同一个编程梦,我们共同进步。
2013-08-05 22:03
y1207435881
Rank: 8Rank: 8
等 级:蝙蝠侠
帖 子:225
专家分:762
注 册:2013-4-30
收藏
得分:2 
回复 7楼 beyondyf
2013-08-06 01:23
peach5460
Rank: 15Rank: 15Rank: 15Rank: 15Rank: 15
来 自:武汉
等 级:贵宾
威 望:30
帖 子:2780
专家分:6060
注 册:2008-1-28
收藏
得分:2 
回复 14楼 apologz
为什么要学了数组和指针才去学算法...

请注意我回帖里面讨论的范畴...
我说,算法思想你什么时候学都行...
具体,使用C去实现你的算法思想...你得有一定的编程功底...
所以对于初学者,我不是很建议你们太早接触算法实现...
当然,一家之言...大家可以讨论...

我总觉得授人以鱼不如授人以渔...
可是总有些SB叫嚣着:要么给代码给答案,要么滚蛋...
虽然我知道不要跟SB一般见识,但是我真的没修炼到宠辱不惊...
2013-08-06 08:19
zhoufeng1988
Rank: 15Rank: 15Rank: 15Rank: 15Rank: 15
来 自:北京
等 级:贵宾
威 望:27
帖 子:1432
专家分:6329
注 册:2009-5-31
收藏
得分:0 
以下是引用beyondyf在2013-8-5 19:32:27的发言:

呵呵,看来我确实没有正确地理解你想表达的意思,原因可能我的理解能力和你的表达能力都有点问题吧,这部分咱们就各自反省自己的不足好了。

关于算法,“不是洪荒猛兽”这个观点我是认同的,但它也确实不简单。

或者,关于算法根本就不该用简单、复杂、浅显、深奥这些词来形容。以我个人的感受,用“浩瀚”这个词也许更合适一些。

因为算法这个词的涵盖面太广,任何一段代码都能叫算法(是的,包括Hello World,免得有人抬杠),但此间的难度却有天壤之别。

仍是我个人的感受,越学越觉得自己所知甚少,越能感受到算法领域的无垠无际。自问此生不敢妄言通达,旦能得其一二足矣。

至于楼主现在水平如何,适不适合学算法(准确地说我觉得该叫算法应用),我倒觉得这些都不重要。

我很喜欢楼主的名字“没事学学”,我也赞同这种观点,让学习回归到兴趣。

既然想学算法,那就没事学学。学了,不会,那就换一种方法。没兴趣了,那就换个别的什么学。

没什么不好的。学,不必非要有所成才行。

至于基础怎么样,这个东西也是相对的。够用就是基础好,不够用就是基础还不够。

通过算法的学习来检验自己语言的应用基础如何也不错。事实上我的语言就是这么学的。

当然,还是要重申,学习方法这东西因人而异,可以参考,但不一定适合。


呵呵,以上纯属于聊天了,再跟天楚聊两句。

看起来天楚在算法方面颇有心得。你能解释一下flody算法和迪克沙塔尔算法(说实话没见过这个名词,个人猜测它指的是Dijkstra算法,如果不是请见谅并顺道解释一下这个算法)的异同么?


看了beyondyf版主的回帖,说的确实很精彩,前一段时间看了几页算法引论,个人觉得很类似beyondyf版主的观点。很久没来BCCN了。但能在这里遇到beyondyf版主这样的高人+好人确实不多。

辗转工作几年,现在还是放弃了去学各种的语言、框架...,重新开始学习数据结构与算法。每个人的程度不同,我一直以为我自己不够聪明,不够灵活,但我还是坚持学下去。不过,不知道以后是怎么样,哎。

虽然我刚学数据结构+算法没多久,但还是觉得应该系统地去学。应该学一学数学归纳法、算法分析呀这些。原来在一家小公司做开发,用到确实不多,现在跳到一家大的企业,越来越觉得算法对于开发太重要了。

借这个机会,也想请beyondyf版主谈谈对算法学习的看法。特别是对一些像我一样基础不太好的朋友说说该从哪些方面入手能够少走一些弯路。感激不尽。
2013-08-16 17:35
快速回复:算法怎么学
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.017124 second(s), 9 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved