09 2022 档案

摘要:地址:https://time.geekbang.org/column/article/70537 图。实际上,涉及图的算法有很多,也非常复杂,比如图的搜索、最短路径、最小生成树、二分图等等。 如何理解“图”? 图(Graph):一种更加复杂的非线性表结构。 图的种类 我们知道,树中的元素我们称为节 阅读全文
posted @ 2022-09-27 22:16 fionna 阅读(123) 评论(0) 推荐(0) 编辑
摘要:题目描述 题目地址:https://leetcode.cn/problems/roman-to-integer/ 题目要求 罗马数字包含以下七种字符: I, V, X, L,C,D 和 M。 例如, 罗马数字 2 写做 II ,即为两个并列的 1 。12 写做 XII ,即为 X + II 。 27 阅读全文
posted @ 2022-09-26 22:10 fionna 阅读(46) 评论(0) 推荐(0) 编辑
摘要:题目描述 题目地址:https://leetcode.cn/problems/integer-to-roman/ 题目要求 罗马数字包含以下七种字符: I, V, X, L,C,D 和 M。 例如, 罗马数字 2 写做 II ,即为两个并列的 1。12 写做 XII ,即为 X + II 。 27 阅读全文
posted @ 2022-09-26 17:55 fionna 阅读(69) 评论(0) 推荐(0) 编辑
摘要:什么是哈希算法? 不管是“散列”还是“哈希”,这都是中文翻译的差别,英文其实就是“Hash”。所以,我们常听到有人把“散列表”叫作“哈希表”“Hash 表”,把“哈希算法”叫作“Hash 算法”或者“散列算法”。 将任意长度的二进制值串映射为固定长度的二进制值串,这个映射的规则就是哈希算法,而通过原 阅读全文
posted @ 2022-09-26 17:12 fionna 阅读(89) 评论(0) 推荐(0) 编辑
摘要:散列表的查询效率并不能笼统地说成是 O(1)。它跟散列函数、装载因子、散列冲突等都有关系。 如何设计散列函数? 首先,散列函数的设计不能太复杂。 其次,散列函数生成的值要尽可能随机并且均匀分布,这样会尽可能地减少散列冲突,即便冲突之后,分配到每个槽内的数据也比较均匀。 如何根据装载因子动态扩容 针对 阅读全文
posted @ 2022-09-26 10:54 fionna 阅读(29) 评论(0) 推荐(0) 编辑
摘要:题目描述 题目地址:https://leetcode.cn/problems/longest-substring-without-repeating-characters/ 题目要求 给定一个字符串 s ,请你找出其中不含有重复字符的最长子串的长度。 解题思路 初始化为一个空数组,并定义一个变量记录 阅读全文
posted @ 2022-09-25 21:18 fionna 阅读(11) 评论(0) 推荐(0) 编辑
摘要:题目描述 题目地址::https://leetcode.cn/problems/two-sum 题目要求 给定一个整数数组 nums 和一个整数目标值 target,请你在该数组中找出 和为目标值 target 的那两个整数,并返回它们的数组下标。 你可以假设每种输入只会对应一个答案。但是,数组中同 阅读全文
posted @ 2022-09-25 21:06 fionna 阅读(16) 评论(0) 推荐(0) 编辑
摘要:散列表的由来? 散列表来源于数组,它借助散列函数对数组这种数据结构进行扩展,利用的是数组支持按照下标随机访问元素的特性。 需要存储在散列表中的数据我们称为键,将键转化为数组下标的方法称为散列函数,散列函数的计算结果称为散列值。 将数据存储在散列值对应的数组下标位置。 如何设计散列函数? 总结3点设计 阅读全文
posted @ 2022-09-25 19:08 fionna 阅读(25) 评论(0) 推荐(0) 编辑
摘要:什么是“平衡二叉查找树”? 平衡二叉树的严格定义是这样的:二叉树中任意一个节点的左右子树的高度相差不能大于 1。从这个定义来看,上一节我们讲的完全二叉树、满二叉树其实都是平衡二叉树,但是非完全二叉树也有可能是平衡二叉树。 平衡二叉查找树中“平衡”的意思,其实就是让整棵树左右看起来比较“对称”、比较“ 阅读全文
posted @ 2022-09-13 21:05 fionna 阅读(17) 评论(0) 推荐(0) 编辑
摘要:题目描述 题目地址: 题目要求: 给你两棵二叉树的根节点 p 和 q ,编写一个函数来检验这两棵树是否相同。 如果两个树在结构上相同,并且节点具有相同的值,则认为它们是相同的。 题目示例: 示例1 示例2 示例3: 题目思路 深度优先遍历 当两棵树的当前节点都为 null 时返回 true 当其中一 阅读全文
posted @ 2022-09-13 17:06 fionna 阅读(16) 评论(0) 推荐(0) 编辑
摘要:题目描述 题目地址:https://leetcode.cn/problems/binary-tree-level-order-traversal/ 题目要求 给你二叉树的根节点 root ,返回其节点值的 层序遍历 。 (即逐层地,从左到右访问所有节点) 示例: 示例 1: 输入:root = [3 阅读全文
posted @ 2022-09-12 21:39 fionna 阅读(17) 评论(0) 推荐(0) 编辑
摘要:题目描述 题目地址:https://leetcode.cn/problems/binary-tree-inorder-traversal/ 题目要求 给定一个二叉树的根节点 root ,返回它的中序遍历 。 示例: 示例 1: 输入:root = [1,null,2,3] 输出:[1,3,2] 示例 阅读全文
posted @ 2022-09-11 10:40 fionna 阅读(81) 评论(0) 推荐(0) 编辑
摘要:二叉查找树(Binary Search Tree) 二叉查找树是二叉树中最常用的一种类型,也叫二叉搜索树。顾名思义,二叉查找树是为了实现快速查找而生的。还支持快速插入、删除一个数据。 特点 在树中的任意一个节点,其左子树中的每个节点的值,都要小于这个节点的值,而右子树节点的值都大于这个节点的值。 二 阅读全文
posted @ 2022-09-11 10:40 fionna 阅读(21) 评论(0) 推荐(0) 编辑
摘要:问题:二叉树有哪几种存储方式?什么样的二叉树适合用数组来存储? 二叉树既可以用链式存储,也可以用数组顺序存储。数组顺序存储的方式比较适合完全二叉树,其他类型的二叉树用数组存储会比较浪费存储空间 树(Tree) 1.树的常用概念 根节点:没有父节点的节点叫做根节点; 子节点:被父节点指向的节点 父节点 阅读全文
posted @ 2022-09-08 23:30 fionna 阅读(24) 评论(0) 推荐(0) 编辑
摘要:$.ajax,这个是 jQuery 对 ajax 封装的最基础函数,通过使用这个函数可以完成异步通讯的所有功能。也就是说什么情况下我们都可以通过此方法进行异步刷新的操作。但是它的参数较多, 有的时候可能会麻烦一些。看一下常用的参数: var configObj = { method //数据的提交方 阅读全文
posted @ 2022-09-07 18:32 fionna 阅读(22) 评论(0) 推荐(0) 编辑
摘要:成功(2XX) |状态码 |原因短语 |说明 | | | | | | 200 | OK | 客户端向服务端发送请求,服务端正确处理 | | 201 | Created | 通常是在POST请求或者PUT请求后创建了内容,从而返回响应 | | 202 | Accepte | 客户端向服务器发送请求,服 阅读全文
posted @ 2022-09-07 17:46 fionna 阅读(38) 评论(0) 推荐(0) 编辑