什么是数据结构?什么是算法?

Posted

tags:

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

理解

  • 数据结构是指一组数据的存储结构(它是静态的,是组织数据的一种方式)。算法就是操作数据的一组方法。如果不在存储结构的基础上操作和构建算法,孤立存在的数据结构就是没用的。
  • 数据结构和算法是相辅相成的。数据结构是为算法服务的,算法要作用在特定的数据结构之上,因此,我们无法孤立数据结构来讲算法,也无法孤立算法来讲数据结构。
    譬如:数组具有随机访问的特点,常用的二分查找算法需要用数组来存储数据。但是如果我们选择链表这种数据结构,二分查找算法就无法工作,因为链表不支持随机访问。

作用:

  • 提高效率、节省存储空间
  • 解决更省、更快地存储和处理数据的问题

重点梳理:

  • 复杂度分析(一个考量效率和资源消耗的方法)
  • 10个常用数据结构(数组、链表、栈、队列、散列表、二叉树、堆、跳表、图、Trie树)
  • 10个常用算法(递归、排序、二分查找、搜索、哈希算法、贪心算法、分治算法、回溯算法、动态规则、字符串匹配算法)

学习技巧:

  • 边学边练,建议每周花1~2小时时间,集中把一周内学习的内容,用代码实现一遍(可适度刷题)
  • 多问、多思考、多互动
  • 打怪升级学习法(设立一个切实可行的目标,每节课之后,都写一篇学习笔记或心得)
  • 知识需要沉淀(反复迭代)

以上是关于什么是数据结构?什么是算法?的主要内容,如果未能解决你的问题,请参考以下文章

启蒙 | 数据结构与算法 - 到底什么是算法?

什么是数据结构

什么是数据结构与算法

数据结构,算法宏观印象构建

数据结构与算法动画:什么是 BF 算法 ?

大数据必学Java基础(五十一):什么是算法和数据结构