简单说说数据结构和算法-概述

Posted tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了简单说说数据结构和算法-概述相关的知识,希望对你有一定的参考价值。

什么是算法?

以排序问题为例,对N个数进行大小排序,对数进行排序实现的操作逻辑就是算法,也可以说算法就是操作数据的逻辑。算,是计算机来运算;法,是我们程序员为交由计算机解决的问题而思考出来的解决问题的方法——只不过问题的最终解决是交由计算机这一工具来进行具体操作实现的,这个方法是以计算机为出发点的;写算法,也就是帮助计算机想个方法来让计算机能更好地解决问题,当然,更好的方法就是占用更少的资源、能更高效地解决某个问题的方法。

什么是数据结构?为什么数据结构和算法常常相随?

数据结构是数据的组织形式,数据之间以什么样的联系关联起来,或者说以什么样的方式组织起来,那我们就说这是什么什么结构。当然,数据结构的总结分类,已经由计算机前辈们总结了。算法的操作对象就是数据,万物皆可为数据,而不同的数据结构有着不同的优点,不同问题下数据规律也不一致,为了使得解决问题的方法更好——计算机运行起来更高效、更节约资源,就兼顾数据结构和不同问题下数据的规律,将这两者结合来来想出更好的方法,这也是学习数据结构和算法的方向——利用数据结构和数据规律,得到更优的运算过程和结果。

数据结构分类?

数据结构分为逻辑结构和存储结构。数据在物理上的存储形式,它在物理内存里以什么样的结构存储的——这就是数据的存储结构;而逻辑结构,是抽象上的,是人抽象出来的数据的组织形式,是要通过特定的方法来实现的,如果你没有实现,你也可以认为逻辑结构只存在大脑中,还没有在你的数据里存在。逻辑结构的实现依赖于存储。

如何学习数据结构和算法?

先学数据结构,要知道那几种数据结构是什么,说出其优缺点和应用场景,如何实现,要懂得用自己的话把某个数据结构描述清楚,可以针对性地找资料学,要得先会实现那些数据结构、知道它们各自的优缺点,算法就是利用数据结构这一工具来展开的。算法的学习需要大量的积累,需要去做算法题,并不是一朝一夕就能成的,网上找找别人的经验,多去做算法题目,多总结、多记录,当然少不了思考,好好地体验算法实现的过程和细节。

注:以上仅个人简解,接受任何批评指教。

以上是关于简单说说数据结构和算法-概述的主要内容,如果未能解决你的问题,请参考以下文章

八大排序算法

八大排序算法

八大排序算法

开发杂谈:说说数据结构和算法的那点事儿

八大排序算法

排序算法