算法跟代码实现有时候是两回事,在开始前刚好我有一些资料,是我根据网友给的问题精心整理了一份「数据结构的资料从专业入门到高级教程」,
点个关注在评论区回复“888”之后私信回复“888”,全部无偿共享给大家!!!你懂算法了,却未必知道怎么实现,而且你实现算法更取决于你对实现算法的语言的熟悉。打个比方,你懂算法,就好像你看得懂伪代码,但你未必能通过照抄伪代码来实现c语言程序,总会有一些伪代码很容易说清楚c语言却很难实现的地方。
如果题主希望认真学习算法,我建议题主入手一本数据结构与算法分析---c语言描述,这一本不仅给出了伪代码思想,他还给出了真正的c语言代码,比如其中的堆的c代码,写得非常好,当然看过之后不能仅仅是看过就完事,你可以通过做老师的作业,刷oj(POJ,codevs都行),来检验自己对算法的理解。在看完这本书之后,如果你想进一步了解算法,可以开始看算法导论。
最后,我希望题目如果知道自己已经懂得算法,却又不知道怎么实现,就去网上看看别人写的代码,不要抱着一定要我自己亲手实现这样的无谓的自尊心浪费时间(当然能自己实现更好)。
看别人的代码,反复思考,再亲手自己写一遍,调试bug,记下自己出错的地方,我觉得这样子做就已经很好了。