您的位置:首页 > 理论基础 > 数据结构算法

个人关于数据结构的看法

2013-10-23 20:10 253 查看
最近在做数据结构的课程设计,发现数据结构很重要,里面好多数据结构类型我个人认为都是基于链表的使用。学习数据结构一定要理解链表的思想。这个思想其实是很简单,但是有很多人就是不能理解。链表的本质就是结点之间的联系,对于初学者(包括我自己),要真正的做到了解其本质。那么就要学会对结点进行增,删,改。(这个在很多书上都有进行介绍),链表的这种思想在数据结构中应用的很广泛(包括树,图)。

当你学会这个思想后,你可以用C语言,C++,java等语言进行链表,二叉树,图等的操作。还有人可能会说中在java中没有指针,这个很难做到。在C语言中使用结构体来定义结点,通过指针来下一个对象。在java中的实现机制是通过类来创建结点,通过对象引用来指向下一个结点。了解j到这个两个本质的差别,那么他们的做法是一样的。其实你要做一个小东西,当你想通它的做法后,可以用任意一种语言进行实现(包括汇编语言)。

对于数据结构,本人认为是十分的强大,也许你还不认识到这一点。学习过数据结构后, 你可能会认为很没有用,那么我只能说你还不会只用数据结构的那种想法,学习数据结构的目的不是让你去记住里面的几种结构类型,真正的是让你学会那种思想,灵活使用数据结构类型可以提高效率,减少代码长度。。链表在数据结构中很重要,但是它的实现的本质就是一个特别的二叉树,而二叉树也可以说是一个特别的图,有时候我们在开发时其实不需要去构建树但是可以时候树中的父母结点和叶子结点的关系,用一个简单的链表将要实现的叶子结点连接起来,然后给增加某些特别的属性,有规律的属性,再做一个字典表,通过这个属性与字典表就行比较可以找打该结点的属性,基于这种想法,那么可以很大的减少内存的使用。

以上是个人看法。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: