随笔分类 - 数据结构及相关leecode刷题题解
摘要:目录 一、 数据结构之堆的基本知识 完全二叉树 完全二叉树的概念 完全二叉树的重要性质 完全二叉树的存储 堆的特性 最大堆 最大堆的特性 最大堆的实现逻辑(包括插入、删除等) 插入 删除 基于堆的优先队列 C++中优先队列(priority_queue)详解 二、数据结构之堆-常见题目汇总 最小堆
阅读全文
摘要:目录 一、哈希表基础知识 1. 哈希表基本概念 二、哈希表相关题目 与出现次数有关 第一个只出现一次的字符(剑指offer50) 第一次只出现一次的字符2 数组中重复的数字(剑指offer03) 最长不含重复字符的字符串 前k个高频元素 只出现一次的数字 存在重复元素 存在重复元素2 回文排列 求和
阅读全文
摘要:目录 一、二叉树的基础知识 1. 二叉树的存储 2. 二叉树的三种遍历方式 2.1 前序遍历 2.1.1 前序遍历的递归实现 2.1.2 前序遍历的循环实现 2.2 中序遍历 2.2.1 中序遍历的递归实现 2.2.2 中序遍历的循环实现 2.3 后序遍历 2.3.1 后序遍历的递归实现 2.3.2
阅读全文
摘要:目录 一、队列的介绍 1.1 静态循环链表 1.2 动态链式链表 1.3 队列的应用:广度优先算法搜索路径 二、队列的相关题目 二叉树的遍历: 二叉树的层序遍历 队列的最大值 滑动窗口的最大值1 队列的最大值 一、队列的介绍 队列是一个能实现“先进先出”的一个存储结构。 队列分为链式队列和静态队列:
阅读全文
摘要:目录 一、栈的介绍 1.1 栈空间特性 1.2 栈的自实现 1.2.1 栈的线性存储 1.2.2 栈的链式存储 1.3 栈的应用:深度优先算法 二、栈的相关题目 队列和栈相互实现 用队列实现栈 用栈实现队列 借助辅助栈实现 包含min函数的栈 栈的最小值 二叉树的几种遍历方式 二叉树的前序遍历 二叉
阅读全文
摘要:一、链表 链表实现了零碎数据的有效组织,比如说,我们用malloc申请内存,内存足够,而由于内存碎片太多,没有连续内存,只能以申请失败而告终。而用链表这种数据结构来组织数据,可以解决此类问题。 链表中至少有两个域,一个域用于数据元素的存储,一个域指向其他单元的指针。 链表可以分为单向链表和双向链表。
阅读全文

浙公网安备 33010602011771号