数据结构都是相通的么?
网友解答: 回答是肯定的。数据结构重点关注两个方面:一个是数据的组织形式(按照ADT来理解)和功能接口设计,另一个就是数据的物理存取。数据结构必然需要通过一门语言作为表达工具。对于不同的
回答是肯定的。
数据结构重点关注两个方面:一个是数据的组织形式(按照ADT来理解)和功能接口设计,另一个就是数据的物理存取。
数据结构必然需要通过一门语言作为表达工具。对于不同的语言,在基本类型的特点和操作方面会有差异,比如你在用C指针的时候,到Java就会相应地使用引用;比如你用C可以malloc动态分配内存,而到Java这部分你就需要靠Java提供数组(由Jvm来分配内存)。掌握了数据结构的核心思想,在不同语言之间切换是无压力的。
对于数据结构的存储,首先不要在脑海中将它固化为内存存储(书本上知识为方便讲述数据结构本身的知识而直接使用语言提供的各种内实现)。一般说来,内存不是瓶颈的时候,我们可以为了性能尽量使用内存,大多数语言在基础类库方面都有常用数据结构(如栈、队列)基于内存存储的实现。而在需要持久化的时候选择合适的策略来保障数据安全性。
一般在处理业务级别时,载入内存的是部分已经筛选过的数据(比如数据库分页查询),这部分数据基本都不会涉及大量的内存使用。但是一旦你要面对大量数据处理或者高并发且需要考虑内存限制时,就需要配合大容量的磁盘和内存一起来做数据结构的存取设计。这一点,你只要联系数据库的索引的设计就能明白。
总结数据结构的核心还是数据结构的思想,到了具体使用的时候,会根据实际情况在结构(比如是数据内嵌到结构中,还是结构内嵌到数据中)和存储方面(同时影响接口的具体实现)做调整。所以,如果你发现换门语言就有点困难就说明掌握还不够,掌握数据结构的重点在于多用多思考多总结。
网友解答:我学数据结构也是学的c语言版。java,Python,c++我都会。在做过一些项目时都实践过。我感觉,数据结构就是讲数据高效组织的,说白了就是对内存的理解。学,还是为了用!!如果你用不好,还是没学到位。