数据结构
「已注销」
深感抱歉
展开
-
堆,图,字符串匹配算法超详细讲解
文章目录概述堆1.定义2.堆的存储结构3.堆的实现3.1创建堆3.2插入元素3.3删除堆顶元素3.4时间复杂度分析4.堆的应用(堆排序)4.1建堆4.2排序4.3复杂度分析图1.概念2.图的存储方式2.1邻接矩阵存储图2.2邻接表存储图3.图的应用-搜索算法3.1定义图的结构3.2广度优先搜索 BFS3.3深度优先搜索 DFS字符串匹配/查找算法1.BF算法1.1原理1.2代码1.3时间复杂度分析...原创 2020-05-06 16:27:04 · 450 阅读 · 0 评论 -
散列表和树快速入门
文章目录概述散列表1.概念2.散列函数2.1散列函数的要求及特点2.2散列函数的设计方法2.2.1直接寻址法:2.2.2除留余数法2.2.3平方取中法2.2.4折叠法2.3散列冲突3.散列冲突的解决方案3.1开放寻址法3.1.1线性检测 :3.1.2二次检测3.1.3双重散列3.2链表法4.应用(HashMap底层解析)面试必问:5.哈希算法5.1定义5.2要求树1.概念1.1定义1.2高度,深度...原创 2020-05-04 17:30:54 · 430 阅读 · 0 评论 -
复杂度分析,递归算法,排序算法最强入门攻略
文章目录概述1.复杂度分析1.1时间复杂度1.1.1概念1.1.2时间复杂度分析方法1.1.3常见的时间复杂度1.1.4最好/最坏/平均时间复杂度分析1.2空间复杂度2.递归算法2.1概念即条件2.2递归的问题2.2.1堆栈溢出2.2.2重复计算2.3递归的案例2.3.1阶乘问题2.3.2目录拷贝3.排序算法3.1评判排序算法好坏的标准3.1.1时间复杂度3.1.2空间复杂度3.1.3算法稳定性3...原创 2020-04-30 22:41:07 · 627 阅读 · 0 评论 -
leetcode 206.反转链表(链表)
题目描述反转一个单链表。示例:输入: 1->2->3->4->5->NULL输出: 5->4->3->2->1->NULL解法1.迭代图解:代码实现:public ListNode reverseList(ListNode head) { //定义两个结点:前结点,当前结点 ListNode pr...原创 2020-04-28 10:19:13 · 217 阅读 · 0 评论 -
线性表数据结构(含源码分析)
文章目录概述1.数组1.1概念1.2逻辑结构和物理结构1.2.1定义1.2.2数组元素的访问1.2.3数组下标为什么从 0 开始1.3特点1.3.1高效访问1.3.2低效插入1.3.3低效删除(解决办法)1.4应用(ArrayList源码分析)1.4.1添加元素的动态扩容1.4.2获取元素1.4.3ArrayList和数组的优劣2.链表2.1概念2.2存储结构2.3链表类型2.3.1单链表2.3....原创 2020-04-28 10:16:20 · 450 阅读 · 0 评论