• 常见算法-排序算法

    2023-01-06 数据结构 0 ℃
    算法一直是我不愿触碰的领域,但是数据结构+算法才是完整的编码人生,生活总是很无奈,没办法,生活以痛吻你,你需报之以歌。写这边博客主要是梳理一下常见的数据结构和算法,也是 促使自己去面对学习数据结构和算法的枯燥。 一、概述 1 算法分类 十种常见排序算法可以分为两大类: * 比较类排序:通过比较来决定元素间的相对次序,由于其时间复杂度不能突破O(nlogn),...
  • Redis原理 - 对象的数据结构(SDS、Inset、Dict、ZipList、QuickList、SkipList、RedisObject)

    2023-01-06 数据结构 0 ℃
    REDIS数据结构 1. SDS Redis 是用 C 语言写的,但是对于 Redis 的字符串,却不是 C 语言中的字符串(即以空字符’\0’结尾的字符数组),它是自己构建了一种名为 简单动态字符串(simple dynamic string,SDS)的抽象类型,并将 SDS 作为 Redis 的默认字符串表示 因为 C 语言字符串存在很多问题: * 获取...
  • 王道考研408 | 数据结构 | 顺序表实验代码

    2023-01-06 数据结构 0 ℃
    目录 * * 实验环境 * 静态顺序表的创建 * 初始化顺序表 InitList(SqList& L) * 定义输出顺序表函数 printList(SqList& L) * 静态顺序表的查找 * * 1. 按位查找 GetElem(SqList L, int i) * 2. 按值查找 LocateElem(SqList L, int e) * 静态顺序表的插...
  • 王道考研408 | 数据结构 | 单链表实验代码

    2023-01-06 数据结构 3 ℃
    目录 * 实验环境 * 1.初始化单链表 * * 带头节点的单链表初始化 * 不带头节点的单链表初始化 * 2.按位查找 * 3.按值查找 * 4.计算单链表长度 * 5.插入操作 * * 后插操作 * 前插操作 * 结合插入和查找 * 6.删除节点 * 7.建立链表 * * 头插法建立链表 * 尾插法建立链表 * tip:定义一个输出链表的函数 * 主程序...
  • 王道考研408 | 数据结构 | 双链表实验代码

    2023-01-06 数据结构 4 ℃
    目录 * 实验环境: * 1.初始化双链表 * 2. 判空 * 3. 查找 * * 3.1 按位查找 * 3.2 按值查找 * 4.插入 * * 4.1 后插值是e的节点 * 4.2 后插节点s * 4.3 前插节点s * 4.4 按位插入 * 5. 删除节点 * * 5.1 删除p节点的后继节点 * 5.2 删除指定节点 * 6. 销毁双链表 * 7.建立...
  • 王道考研408 | 数据结构 | 链式队列的实验代码

    2023-01-06 数据结构 3 ℃
    目录 * 链式队列存储结构 * 队列初始化 InitQueue(LinkQueue& Q) * 判空 isempty(LinkQueue Q) * 入队操作 EnQueue(LinkQueue& Q, ElemType x) * 出队操作 DeQueue(LinkQueue& Q, ElemType& x) * 打印队列元素 printQueue(LinkQ...
  • 12.27日刷题总结

    2023-01-06 数据结构 5 ℃
    题目描述 给定你一个长度为n的0/1序列a(只包含0和1),求逆序对的数量 逆序对:满足条件ia[j]的i,j下标 输入 第一行给定一个t(1...
  • 12.28刷题总结(数据结构——栈的认识)

    2023-01-06 数据结构 1 ℃
    C语言中的栈(操作较为复杂) 栈(stack)是限定仅在表尾进行插入或者删除的线性表。对于栈来说,表尾端称为栈顶(top),表头端称为栈低(bottom)。不含元素的空表称为空栈。因为栈限定在表尾进行插入或者删除,所以栈又被称为后进先出的线性表(简称LIFO:Last in, First out.结构)。 C++中的栈(操作较为简单) C++ 对模板(Tem...
  • 1.4刷题总结

    2023-01-06 数据结构 0 ℃
    题目描述 农夫约翰非常认真地对待他的奶牛们的血统。然而他不是一个真正优秀的记帐员。他把他的奶牛 们的家谱作成二叉树,并且把二叉树以更线性的“树的中序遍历”和“树的前序遍历”的符号加以记录而 不是用图形的方法。 你的任务是在被给予奶牛家谱的“树中序遍历”和“树前序遍历”的符号后,创建奶牛家谱的“树的 后序遍历”的符号。每一头奶牛的姓名被译为一个唯一的字母。(你...
  • 详解二叉排序树

    2023-01-06 数据结构 0 ℃
    二叉排序树的插入、查找、删除 二叉排序树的定义 二叉排序树右称二叉查找树。或者为空树,或者是具有以下性质: (1)若它的左子树不为空,则左子树所有节点的值小于根结点, (2)若它的右子树不为空,则根结点的值小于所有右子树结点的值 (3)它的左右子树叶分别为二叉排序树 总结起来就是根据结点的值有:左子树...