当前位置 博文首页 > 英雄哪里出来:??三万字《算法和数据结构》数据结构到底有多重要

    英雄哪里出来:??三万字《算法和数据结构》数据结构到底有多重要

    作者:[db:作者] 时间:2021-09-14 13:24

    您可能感兴趣的文章推荐
    画解顺序表
    画解链表
    画解栈
    画解队列
    画解哈希表
    画解二叉树
    画解图
    画解排序

    直接跳到末尾 获取粉丝专属福利。


    零、前言

    ??「 数据结构 」「 算法 」 是密不可分的,两者往往是「 相辅相成 」的存在,所以,在学习 「 数据结构 」 的过程中,不免会遇到各种「 算法 」
    ??到底是先学 数据结构 ,还是先学 算法,我认为不必纠结这个问题,一定是一起学的。
    ??数据结构 常用的操作一般为:「 增 」「 删 」「 改 」「 查 」。基本上所有的数据结构都是围绕这几个操作进行展开的。
    ??那么这篇文章,作者将主要来聊聊:

    「 算法和数据结构 」



    ??在学习数据结构的过程中,如果你能够自己把图画出来,并且能够描述整个 「 增 」 「 删 」 「 改 」 「 查 」 的过程,那么说明你已经真正理解了数据结构的真谛,来看下下面几张图:


    在这里插入图片描述

    文章目录

    • 零、前言
    • 一、算法和数据结构的重要性
      • 1、为什么要学习算法
      • 2、如何有效的学习
      • 3、坚持并且把它当成兴趣
      • 4、首先要有语言基础
      • 5、如何开始学习数据结构
      • 6、数据结构和算法是相辅相成的
    • 二、数据结构是根基
      • 1、数组
        • 一、概念
          • 1、顺序存储
          • 2、存储方式
          • 3、长度和容量
          • 4、数据结构定义
        • 二、常用接口实现
          • 1、索引
          • 2、查找
          • 3、获取长度
          • 4、插入
          • 5、删除
      • 2、链表
        • 一、概念
          • 1、链表定义
          • 2、结点结构体定义
          • 3、结点的创建
        • 二、链表的创建 - 尾插法
          • 1、算法描述
          • 2、动画演示
          • 3、源码详解
        • 三、链表的创建 - 头插法
          • 1、算法描述
          • 2、动画演示
          • 3、源码详解
      • 3、哈希表
        • 一、哈希表的概念
          • 1、查找算法
          • 2、哈希表
          • 2、哈希数组
          • 3、关键字
          • 4、哈希函数
          • 5、哈希冲突
          • 6、哈希地址
        • 二、常用哈希函数
          • 1、直接定址法
          • 2、平方取中法
          • 3、折叠法
          • 4、除留余数法
          • 5、位与法
        • 三、常见哈希冲突解决方案
          • 1、开放定址法
            • 1)原理讲解
            • 2)动画演示
          • 2、再散列函数法
            • 1)原理讲解
          • 3、链地址法
            • 1)原理讲解
            • 2)动画演示
          • 4、公共溢出区法
            • 1)原理讲解
      • 4、队列
        • 一、概念
          • 1、队列的定义
          • 2、队首
          • 3、队尾
        • 二、接口
          • 1、数据入队
          • 2、数据出队
          • 3、清空队列
          • 4、获取队首数据
          • 5、获取队列元素个数
          • 6、队列的判空
      • 5、栈
        • 一、概念
          • 1、栈的定义
          • 2、栈顶
          • 3、栈底
        • 二、接口
          • 1、数据入栈
          • 2、数据出栈
          • 3、清空栈
          • 1、获取栈顶数据
          • 2、获取栈元素个数
          • 3、栈的判空
      • 🌵7、二叉树
      • 🌳8、多叉树
      • 🌲9、森林
      • 🍀10、树状数组
      • 🌍11、图
    • 三、四个入门算法
      • 1、排序
      • 2、线性迭代
      • 3、线性枚举
      • 4、二分枚举
    • 四、粉丝专属福利
    cs