代码看的懂,原理看的懂,要是自己写代码,就是错的 主要是想说一说大家当时是如何度过这个难关的, 还有数据结构在嵌入式是上真的有用吗?
1
gnozix 2018-10-27 15:56:50 +08:00
照着抄几遍了再自己动手写
|
2
AX5N 2018-10-27 15:58:07 +08:00
错的就改到对的为止,写代码不都是这样,这有什么问题吗。一步一步尝试,直到对为止,不然还能怎么样。
不一定有用,除非你知道你要用来干什么,否则我认为可以不学或者以后再回头学。但如果你是学生,不学你也过不了考试啊。 |
3
minami 2018-10-27 16:04:48 +08:00
不会写就写注释,写一行注释打一行代码
|
5
chashao 2018-10-27 16:15:09 +08:00 via Android
试试刷题
|
7
cjw6 OP @minami 数据结构未来会用在哪里,可以具体说说吗,我现在只是想加强编程的基础能力。以前听别人说,如果不会数据结构,堆栈,做大项目会很吃力的。
|
8
Zchary 2018-10-27 16:24:52 +08:00
原理搞清, 背链表的实现代码, 之后的学习会水到渠成. 毕竟英语不是我们母语,记住了一些例子后容易举一反三
|
9
houzhishi 2018-10-27 16:28:47 +08:00
抽象的思维还是得需要自己反复的咀嚼吧。
|
10
Linyvhan 2018-10-27 16:40:30 +08:00
emmm 刷题.
|
11
AltairT 2018-10-27 16:41:25 +08:00
哇,链表是最基础的好不...不说嵌入式,即使是 web 开发,普通的 crud 用的也少,但是想往上走就要学.
|
12
jzq526 2018-10-27 16:53:20 +08:00
多写几次。我当初看链表时,也感觉能看懂,但一上手就傻眼了,第一次写花了很长时间,主要是用来改各种错误。写完后放置几天再写一次,然后再过几天再写一次。三次的代码都不一样……因为每次重写,理解就加深一点。
所以我建议你硬着头皮写下去,只要能写对一次,然后再修改一两次,就会理解得比较深入了。 如果真写不下去了,找本有代码的书,先抄一下 |
13
visonme 2018-10-27 16:55:31 +08:00
我能想到的是编码时候太粗心了,没有彻底明白自己写的每一行代码运行的结果,所以才导致这种错误。比如用 C,那么要注意指针操作了,赋值不对或者操作不当,那就是一个连锁反应了。
多敲几次,多错几次就知道了。 数据结构肯定是有用的,只是大多数人不会直接的应用或者直接使用的很少,因为此类东西大多数会被封装在底层,而我们大多数工作其实只是一个调用而已~ 自然就感受不到它的存在,算法其实也是同样的。 对于想在技术上进步的,基本都绕不开~ |
14
yanxijian 2018-10-27 17:02:23 +08:00 via iPhone
草稿纸上画图
|
15
nicktogo 2018-10-27 17:17:17 +08:00 via iPhone
知道 c 里的指针的话,应该链表就能理解吧。。。以前只学过 c,还没上数据结构算法,就能直接用链表写代码了。。。
|
16
fugu37 2018-10-27 17:24:32 +08:00
当初是创建一个简单的链表,然后把所有指针的地址都打印出来。。。
|
17
msputup 2018-10-27 17:25:17 +08:00
画个图就懂了啊。
|
18
t6attack 2018-10-27 17:34:47 +08:00
基于链表的学生成绩管理系统 or 基于链表的球队信息管理系统,是大学 C 语言课程作业。老师先讲一遍。然后大家分成小组,自己写一遍。然后交作业,接受老师提问,老师给作业打个分,算进期末考试成绩。就这样。
考完试以后,具体代码怎么写,大家都渐渐忘了。但基本原理能记住。因为原理是小方块画出来的,比较形象。 链表是计算机世界的基础,所以应用层面的开发中往往接触不到。就像装修店铺接触不到钢筋一样。 |
19
liaokylin 2018-10-27 17:44:38 +08:00 via Android 1
只有随意写的出来才叫懂原理
|
20
Leigg 2018-10-27 17:45:39 +08:00 via iPhone
抄几遍,写上注释,再背着写
|
21
Yourshell 2018-10-27 17:49:29 +08:00 via iPhone
那应该是你语言没学好
|
22
liuminghao233 2018-10-27 17:49:38 +08:00 via iPhone
语言都不会学什么数据结构
先把 c 语言学好吧 |
23
msg7086 2018-10-27 17:56:11 +08:00
无他,但手熟尔。
|
24
wingkou 2018-10-27 18:35:31 +08:00 via Android
这不叫懂了,真懂了可以信手拈来...
|
25
misaka19000 2018-10-27 18:58:46 +08:00 via Android
如果真的花了很大的精力还是不能理解,那么可能真的是不适合干程序员
|
28
congeec 2018-10-27 22:15:38 +08:00
链表原理简单,写起来就各种小错误,特别是用 C 语言写,多写多熟悉呗
|
29
mrcn 2018-10-28 01:04:28 +08:00 via Android
我用指针写程序各种崩溃……后来我就偷懒用数组模拟链表……
|
30
plqws 2018-10-28 10:26:55 +08:00 via iPhone
用自己最熟悉的语言学,其实不是数据结构难,而是语言难。
|
31
xx19941215 2018-10-28 10:47:38 +08:00
感觉 linked list 不是很难,后面的图啥的比较不容易理解
|
32
em2046 2018-10-28 11:38:25 +08:00 via iPhone
画图方便理解
|
34
wtdd 2018-10-28 12:40:46 +08:00
趁早改行吧,链表已经是最简单的数据结构之一了,如果这个都头大,后面学 C++得多痛苦……
以上开玩笑,各种看得懂一写就错,基本上是记忆力问题,而 coding 最需要的就是记忆力,远超其他智商因素 死记硬背也许是一种解决方案…… |
35
laike9m 2018-10-28 12:46:46 +08:00
大部分人可能都没遇到过这个难关吧。。。
|
36
adminii 2018-10-28 12:48:45 +08:00
不然 bug 怎么来的,就是一步一步来的
|
37
Raisu 2018-10-28 15:53:27 +08:00 via Android
自己实现一遍,链表,字典,set,树堆栈这些东西自己实现一遍
|
38
JerryCha 2018-10-28 16:19:16 +08:00 1
大概明白楼主想说啥,懂的原理,但是亲自实现一堆 bug。把 LeetCode Easy 刷一遍就好了。
|
39
kongkongyzt 2018-10-28 23:17:00 +08:00 via Android
链表已经是很简单的数据结构了,链表觉得有困难的话,后面的树还有各种翻转岂不是会觉得更加难?
|
40
cjw6 OP @JerryCha 这个说的我的情况差不多。后来我想了想一下问题原因是是我的代码逻辑分析不太行,还有对自己写的 c 语言每个语句执行功能懂得不够透彻,特别是指针方面。
|
41
lwj871731342 2018-10-29 09:12:53 +08:00 via Android
多写就好了
|
42
LxkLxkLxk 2018-10-29 16:55:27 +08:00
我也是做嵌入式,等你以后做操作系统相关的时候,数据结构会非常有用。
学习的话,先画图,然后一点一点的写,别看例子,就自己鼓捣。本质上来说,还是你的逻辑思维能力不够,数据结构恰恰是锻炼你这方面的能力。 |
43
mrcn 2018-11-11 09:27:17 +08:00 via Android
|