问题背景
我在学习数据结构的过程中,发现大部分相关书籍都着重讲解原理,但是到了实践部分,要么是一笔带过,要么是代码实现不严谨(比如有的书用C语言实现的时候,书上的代码就是一些不安全的C代码).虽然看原理是挺爽的,但是看到实现部分却是郁闷.
自己动手去实现,运行符合预期, 但是总想有一份标准,(好知道哪些代码是可以改进的,哪些地方的实现是不安全的)
求书
一本经典的数据结构和算法书,该书比较重实现.代码实现语言可以使C/Java/Python.另外关于<算法导论>, 我买了这本书(真买了,但是真心看不懂,我等级不够).结论是: 这真是一本非常好的书,但是我目前的水平理解起来比较费力气(打怪都讲究等级匹配),打算以后钻研.
更新
感谢朋友们的推荐,已下单<算法>.
有大大批评我懒,应当多Google.但是我真心是会Google的,Google的各种语法很熟练(单纯只是Google而没有site语法效率真的很低).而且我还认为:互联网能解决问题的同时,你可能需要先过滤许多垃圾内容.可能需要花费许多时间,而需要搜索的通常是新手,对于他们的问题,往往不具有甄别优劣的能力,有时候胡乱Google并不能很好解决问题.
看你的描述,你并不在于是否需要一本书,而是你根本就没思考,
其实你在看数据结构的描述的时候,就应该自己去想怎么去实现,自己动手写一些,
然后看书验证,看看书上的代码跟你的代码优缺点是什么。
你写不出来,只能说要么你没有理解每种结构的原理,或者你的代码能力不够,写不出自己脑中所想的东西,
前者,在于你多看些资料,多在纸上画画,
后者,请确认你对c语言的指针和结构体是否熟悉,几种数据结构用C实现起来真心不复杂,c的数组就是一种线性表,把几个结构体通过指针连接起来就是链表了,至于d_link,trie ,hash,b,b+都是为了减少随机查找次数而改进的链表实现。队列和栈是线性表和链性表的特殊形式。