1
riaqn 2014-07-01 22:21:00 +08:00 1
本来想发lmgtfy的链接,但是考虑到最近google抽风,作罢了。
数据结构就是存储,表达数据的方法吧,就是用了这个数据结构后,哇塞,一切都简单了。 |
2
jsjscool 2014-07-01 22:25:18 +08:00 1
|
3
yxz00 2014-07-01 22:33:02 +08:00 1
数据结构:在内存中保存数据(通常是指大量相同类型的数据)的方式。
最简单的就是数组,把数据在连续的内存空间中保存。进一步的是链表,树结构等等。 |
4
wy315700 2014-07-01 22:35:24 +08:00 1
http://poj.org/ 上这里做几百道题 基本上就学会了
|
5
fangpeishi 2014-07-01 23:15:48 +08:00 1
动手去实现一下几种基本的数据结构会有帮助。
|
6
laoisaudi 2014-07-02 01:11:10 +08:00 via iPhone 1
找一本比较好的数据结构的书,认真啃完,然后动手实现一遍,最后最一下oj的题就差不多了
|
7
jprovim 2014-07-02 01:53:06 +08:00
為什麼要講給你? 自己讀書去吧. 別想吃我們咀嚼過得東西, 自己去找食.
|
8
em70 2014-07-02 03:07:37 +08:00 via Android 2
楼主困惑的其实是学这个东西有啥用
应该说数据结构是职业程序猿的最重要的基本功,堆栈,队列,哈希,冒泡,二分法,树这些词汇应该烂熟于心,不管什么语言,都得用这些东西去完成一个个功能 优秀程序员往往数据结构是天生就理解的,不需要人讲,自己看看书即可。大牛基本上都能免修数据结构 如果实在学不明白,或者没有兴趣,不用自卑,每个人都有自己擅长的领域,你应该思考下自己是否真的适合这个行业,这行需要极高的天赋,填鸭式培训出来最多就是个码农,三十岁前还得转行,不如早点进入适合自己的行业。 女怕嫁错郎,男怕入错行,这是真理中的真理,切记 |
13
windywinter 2014-07-02 09:49:16 +08:00
@wampyl 不是,是为了更有效率的操作数据。比如要O(1)时间随机访问,需要用数组;要O(1)时间插入删除,需要链表;要O(1)时间找最大/最小值,需要堆。
|
14
wampyl OP |
16
yxz00 2014-07-02 09:59:15 +08:00 1
@wampyl 数据结构就是为了更有效率的利用内存吗?
问这种问题,说明你对数据结构还没有感性认识。你甚至不清楚数组和链表在使用上的区别和优劣。 但是这些最基本的数据结构是大多数语言基础教程中都会尝试实现的。比如学c语言,任何一本书讲到指针的时候都会不可避免的讲到链表结构的实现。 所以我的建议是好好学好你的语言基础课先。等你把数组到链表的实现搞清楚了。再来看你现在的问题就觉得其实没有都没必要问。 学东西一步步来,语言语法先搞透了再来系统的看数据结构和算法。数据结构和算法这种东西我还真没看过太针对初学者的书。唯一我能推荐的就是《算法导论》,但是这个书难,如果看不懂就先放一边,把其他基础课(包括高数)学好再来。 |
19
wampyl OP 还得成长啊
|