刚开始接触数据结构的痛苦,我想很多程序员都有所体会,数据结构是一门抽象、研究数据集合和集合中元素之间关系的学科,很考验学习者的逻辑思考、理解能力,如果之前没有学过离散数学等基础学科,一开始学习数据结构就想轻松上手,几乎是不可能的。但是数据结构是不是很重要?是否非学不可?不同人却有不同的看法。
小编有个朋友,数据结构他学得一团糟,以他的话来说:“学习数据结构,他一直在云里雾里”,但他在大三大四非常认真地学习了JavaWeb编程,毕业后找到了一份挺不错的工作,从事JavaWeb开发。他虽在后来的工作过程中接触、学习了一些数据结构的知识,但他仍然觉得数据结构并不是很重要,可以说有点排斥它,可能是当初刚开始学习数据结构时留下了太难学的心里阴影。
有去面试过大型互联网、计算机科技企业工作岗位的同学可能就不赞成上面的观点,他们会觉得数据结构非常重要,因为数据结构知识不仅是大型互联网企业面试的必考题,对于大型软件系统构造的难易程度和质量也是非常重要的。
树的结构
从以上两种情况可以看出,数据结构是否重要,有时取决于我们要面对的工作或者问题。对于使用高级语言开发的程序员来说,可能很少接触到数据结构,但是其实数据结构就在他们周围,因为很多高级语言编译工具为了方便使用者,已经把一些数据结构写成了库或是包,只要调用就好了。而对于大型互联网、计算机科技企业,他们深知数据结构的重要性,他们也希望所招入的技术人员能够面向数据和逻辑,这对于整个软件架构来说很重要,而不仅仅是把一段代码写好。
数据结构是指相互之间存在着一种或多种关系的数据元素的集合和该集合中数据元素之间的关系组成。数据结构包括线性结构、树形结构、图状结构,常用的数据结构有:数组、链表、堆栈、树、图等,常用的排序算法有:希尔排序、冒泡排序、快速排序、选择排序等,常用的查找算法有:顺序查找、折半查找、分块查找等。掌握好数据结构,也就掌握好了数据处理的算法,良好的数据结构对于软件系统的执行效率、数据存储效率都非常重要。
栈的模型
以上简单了解了什么是数据结构和数据结构的重要性,想要学好数据库,需要花大量时间去学习、演练模型和思考,在这里就先不多说了,在以后的文章中将分知识点介绍。如果你从事编程的工作,不管你现在是不是需要用到数据结构的相关知识,在工作的过程中理解、掌握好数据结构,对现在的工作和以后的发展都是有帮助的。