谈谈你理解的数据结构

版权声明:To be or not to be, thats a question. https://blog.csdn.net/qq_32823673/article/details/81089020

要开始工作了啊,记录一下.

        我个人认为数据结构其实就是一个带“结构”的数据元素的集合,而结构就是指数据之间存在的关系,也可以说是用来解决数据存储和数据操作。我平常使用的是数据存储可以用线性表来实现,当一些数据较为庞大,或者需要查找某些数据之间的联系,有时候会用到树和图,像二叉树,最小生成树等。像队列和堆栈,都是线性表的一种,它们两个抽象数据类型有区别,比如像栈是先进后出,而队列是先进先出。排序也是有很多种,插入排序(直接、二分...)、选择排序(直接选择、堆排序)、交换排序,还有归并排序等,目前是快速排序使用的较多,像二分,归并和堆排序,桶排序也会根据具体的需要去使用。冒泡排序一般最稳定,但是快速排序是效率最高的。图最常用的就是在一个范围内,有n座城市,然后m条路,让你找到两个城市之间最近的路。这个就可以用迪杰斯特拉和优先队列,或者就是弗洛伊德来实现。这个时候,队列也是相辅相成的。查找应该在未来的项目实现中占很大比重,当数据庞大时,就可以考虑该程序的实现效率是否高效,折半查找就是一个很好的解决办法,二分等。还有就是平衡二叉树、AVL树、B+-树等一系列较为优秀的操作,来解决表插入或删除操作频繁的问题,来维护表的有序性。
虽然数据结构会在处理数据问题上占了很大的比重,像时间复杂度,空间复杂度等,这些不可忽略的问题,也是需要重视。所以算法就是一个很好的途径,毕竟一个程序的灵魂就是算法。而且,在运用数据结构处理问题,有时候也会用到数学问题,几何等。每一个分支都不应该单独操作和实现,它们之间应该是相辅相成的关系.并且我觉得,我需要在今后的工作中,仍然需要不断地学习,加强自己的专业素养,毕竟我只是学到了冰山一角。

以后要更加努力啊!

展开阅读全文

没有更多推荐了,返回首页