• 如何抓中重点,系统高效地学习数据结构与算法?


    前言


    刚开始学习数据结构与算法的时候不知道该如何下手,通过一段时间的学习总结了一套自己学习的学习方法。如果正在阅读的您看到有不合理的地方,欢迎指出来,大家一块学习。

    是什么?


    数据结构:一组数据的存储结构
    算法:操作数据的一组方法
    数据结构是为算法服务的,算法是要操作用在特定数据结构上的。

    学什么?


    在这之前我们先看一张图:数据结构与算法大全图示:

    在这里插入图片描述


    图中有很多的数据结构与算法,有基础的、常用的、高级的等等,但是对于初学者我认为没必要胡子眉毛一把抓,首先需要学会、学通基础的、切常用的,那么再去接触高级的也就相对容易上手了。所以对于要学什么,总结了两点:

    (1)效率和资源消耗的衡量度 -- 复杂度分析
    (2)最常用、最基础组的20个数据结构与算法,学习他们的:“来历”、“特点”、“适合解决什么问题”和“实际应用场景”
    10个数据结构:数组、链表、栈、队列、散列表、二叉树、堆、跳表、图、Trie树
    10个算法:递归、排序、二分查找、搜索、哈希算法、贪心算法、分治算法、回溯算法、动态规划、字符串匹配算法。

    怎么学?


    (1)边学变练,每周花1~2小时集中攻关最近几天自己学习的数据结构与算法,全部写出来,多练几边,重在理解,不能死记硬背,背下来的东西很容易忘记。
    (2)多思考、多交流。独立思想其中的逻辑与思想,有问题多跟专业的算法同学/同事交流,获取我们之前的理解本身就有问题呢。
    (3)自我激励,每学习一个知识点做一篇学习笔记。
    (4)沉下心学不要浮躁,先把最基础的掌握,然后在去追求更高层次的。

    总结


    对于上面总结的最基础常用的10个数据结构和算法有需要补充的同学欢迎留言。

  • 相关阅读:
    Linux 进阶 - 1
    TensorBoard的使用1(add_scalar函数)
    迪士尼FAMA认证作用及取得FAMA注意事项
    分享3个文字配音软件,帮助你们轻松制作短视频
    2023 年高教社杯全国大学生数学建模竞赛题目 B 题 多波束测线问题
    如何使用 Terraform 和 Git 分支有效管理多环境?
    职业探索-运维体系-网络运维相关01
    《痞子衡嵌入式半月刊》 第 83 期
    智慧医院解决方案
    Android通过BluetoothDevice获取蓝牙地址
  • 原文地址:https://blog.csdn.net/lijunhcn/article/details/132617146