小弟进资策会前从没有碰触过程式语言,
目前在资策会学习差不多过了一个多月,
紧凑的课程中,授课老师偶尔会出作业给我们练习(目前学了JAVA SE & JavaScript)
小弟遇到的问题是: 老师出的作业我几乎都写不出来...如果只有一题两题不会就算了
是几乎每个作业都没办法自己从无到有自行完成...都必须参考同学的才写得出来...
我不清楚到底是自己学习方式出问题?
只要老师有出作业,挫折感就会好深好重,
每次都问自己,为什么同学都写得出来我却不行?好几次想放弃可是又不甘心...
再跟各位前辈补充一下我的学习方法...
老师上课时大概80%都听得懂,回家也都会认真复习(课本范例都有至少练习三次直到自己很熟)
可是只要有变化或是需要应用的题目我就完全无法下手(ex:盒内塔问题、跑马灯抽奖程式
、洗牌程式....)
到底是我还缺少了什么?学习方法有那里可以改变?
还是真的是我脑筋太笨逻辑太差....
感谢各位前辈耐心看完我的问题...真的很需要各位前辈的经验参考...
作者:
testPtt (测试)
2016-09-21 21:25:00没天分阿 我以前也是一样
作者:
gpctv (gpctv)
2016-09-21 21:39:00其实那些算法,网络都找的到,但不能全抄,就算全抄,答案也不见得一样!像日期问题,每次要转格式我都一定要查一下,日期转字串,字串转日期,我都要查,但如果今天日期要转一串长整数怎么办?!所以还是要有自己的想法对了,画出流程图也是很好的方法
作者:
bcew (bcew)
2016-09-21 21:40:00推楼上,缺乏解题技巧,像可以重复用二分法分两步骤像河内塔是全部从A搬到C,就是n-1搬到B,n搬到C,
原PO问题是算法吧...工作大部分只要会google就够了
作者:
bcew (bcew)
2016-09-21 21:46:00再用同样方式处理n-1,看到这样就会想到递回函式也许你可以先不练解题,而是多看范例知道各种做法
作者:
testPtt (测试)
2016-09-21 22:05:00我就是一直抄 一直菇狗 看的程式码多 久了就习惯了
作者:
Sunal (SSSSSSSSSSSSSSSSSSSSSSS)
2016-09-21 22:55:00google也不是随便喂关键字就有的 基本的还是要懂
作者:
pttworld (批踢踢世界)
2016-09-21 22:57:00感觉好像很急,养成需要时间。
作者:
Sunal (SSSSSSSSSSSSSSSSSSSSSSS)
2016-09-21 22:57:00也可以先看看 资料结构
作者:
drajan (EasoN)
2016-09-21 23:21:00把google废掉 一半以上的工程师也废掉了算法不是用看的 要自己implement 玩玩leetcode吧
作者: ppppman (4pman) 2016-09-21 23:28:00
刚开始这情况很正常 更多的是基础要打稳 我是上别班的 大概最后两个月做专题才觉得自己进步很多 因为后面比较懂基础熟练了 实作出来成长会快很多 你还是阵痛期 加油啦~
作者:
GoalBased (Artificail Intelligence)
2016-09-21 23:58:00多花时间慢慢想
作者:
femlro (母猪教谋神异端审问官1.5)
2016-09-22 00:03:00红的明显 勿妄自菲薄 同学也是google来的那些算法问题很多都是很多年做出来的论文有些人是因为比你早学过或者本科早就摸过背起来了并不是因为比你厉害 你需要的先直接照抄不要问为什么当你越学越多 然后往后复习 你对资料结构和算法就会有越来越多灵感 或者多请教一些高手给你一些提示再来出社会上班比较多机会是架构问题 算法都有现成你只要知道有哪些排序方式和哪些著名的算法google都能google得到 重点是要熟 不是要你发明不否认很多高手可以很直觉地写出好用的算法但我想以台湾基础工程师还不太能做出这块都要到资深或者有很强数学基础的人才能设计算法
老师出的大多都是经典题目,而经典之所以是经典,就是需要你花时间思考练习,如果真的卡死无法,google,看别人的解法,然后自己重新从头写,大部分人都是这样学的
作者:
femlro (母猪教谋神异端审问官1.5)
2016-09-22 00:07:00一开始要以语法和简单的物件导向架构为学习目标以java来说算是这世界上生态系与资料最好找的语言了
作者: goths5958 (德克斯特) 2016-09-22 00:19:00
觉得你的问题不是学算法 是不习惯逻辑思考分析推演找个看得懂的范例程式 试着去说明程式的来龙去脉 运作流程 这行在做什么 为何要这样写。确认自己够清楚 能够将这些说明得让不懂这只程式逻辑的人也能听懂经过这些演练 对于程运作式的逻辑思考流程会比较有感觉面对新问题时 可用纸笔及图像辅助 一步一步厘清问题如果你清楚范例 遇到A问题 因为是B状况 所以用C解法新题目也是A问题 但是是b状况 所以不能用C 试改用c类似这种推演 就比"遇到A就用C 然后不懂为何挂掉"还好另外 学习"拆解问题"也是重点 整合包装后的题目 其实进一步看 可能就是几个子问题子区块 要学会摊开检视
作者: dnabossking (少狂) 2016-09-22 02:30:00
好想分享一些心得,但好怕被嘘爆
作者:
johnny94 (32767)
2016-09-22 03:03:00看你举的例子,河内塔真的不简单啊
作者:
blackcan (太平李荣浩)
2016-09-22 04:50:00估狗是正常的,有时不需要重新发明轮子
作者:
keyut2433 (keyut2433)
2016-09-22 05:47:00推goths5958
我java班结训到现在也还不会河内塔那些算法的题目QQ
作者:
loveu8 (RA1-推广)
2016-09-22 06:51:00推楼上XD。不过学习程式一开始不是领悟力这么高像以前用C写九九乘法表,花了一天去想,跟纸笔帮助才顺利写出来。之后逐渐会思考怎样拆解问题,切分出自己可以处理,与尚无法处理的部份从问题中,不管是用程式验证你想的逻辑,还是写下来思考都有助于去厘清程式的运作,与理解问题可行的步骤与逻辑尝试验证,尝试再验证,出现卡关,老是想不懂,可以寻找同学给予帮助,或者Google参阅程式码,从他们程式码理解程式的运作。建议可以学习Eclipse debug,可以更进一步知道,程式运行的流程。会给予你一定的帮助
作者: bab7171 2016-09-22 07:12:00
这是刚开始学程式撞墙期,一直学不要放弃
作者:
aaaming (搅屎南帝一灯大湿)
2016-09-22 08:48:00越撞墙越好玩 撞破就强化勒
作者: weizhong (Weizhong) 2016-09-22 09:41:00
将大问题切成小问题,例如跑马灯抽奖,你可以先拆成如何乱数抽奖与跑马灯显示两个问题,再来先想乱数如何产生,先用简单方式显示,然后跑马灯怎么做出来,理想的话你最后可以把这两个功能模组化,以后还可以拿出来用,不过大前提是你语法要先弄熟,再来才是去实现这些东西
作者:
rupcj8 (唉呀)
2016-09-22 12:42:00不懂就多抄几次 还是不懂就跳过 哪天你回头一看突然就会我记得我当初学一些递回的算法也是很无法接受但是某天突然就觉得很简单 人脑真神奇
作者:
descent (“雄辩是银,沉默是金”)
2016-09-22 12:52:00河内塔本来就很难, 写不出来多的是你能可需要从简单的题目开始, 老师的题目可能太难ex: 99乘法表之类的, 递回就先不要练了, 难度太高
作者:
qrtt1 (有些事,有时候。。。)
2016-09-22 13:04:00《高考灰姑娘》《考试之神》《龙樱》先看个日剧,有些学习技巧。你得做点什么,自己想不出来也没关系,最终结果要有出来,符合需求就行了。
理解问题,分析可能性,画出流程图,动手尝试照流程制作。然后就是工程师最长做的事情,估狗+打掉重来。久了就没问题了。
看来资策会没想像美好 还是得有一定基础底子才靠谱!
作者:
jyunwei (jyunwei)
2016-09-22 19:39:00我什么基础进都没有进去,现在也是在工作了
作者: rpdef9969 (在键盘上放羊) 2016-09-23 00:30:00
推! 不是程式语言问题,是无法了解题目