自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(15)
  • 收藏
  • 关注

原创 二分查找5.17

217. 存在重复元素给你一个整数数组 nums 。如果任一值在数组中出现 至少两次 ,返回 true ;如果数组中每个元素互不相同,返回 false 。哈希大法好53. 最大子数组和给你一个整数数组 nums ,请你找出一个具有最大和的连续子数组(子数组最少包含一个元素),返回其最大和。子数组 是数组中的一个连续部分。动态规划的思路真的很好,以第i个元素结尾的最大和序列,如果以第i个元素结尾的最大序列大于0,i+1个就是nums[i+1]+dp[i],否则就不要前面的直接就是n

2022-05-17 11:39:48 96

原创 位运算5.15

5234. 移除字母异位词后的结果数组给你一个下标从 0 开始的字符串 words ,其中 words[i] 由小写英文字符组成。在一步操作中,需要选出任一下标 i ,从 words 中 删除 words[i] 。其中下标 i 需要同时满足下述两个条件:0 < i < words.length words[i - 1] 和 words[i] 是 字母异位词 。只要可以选出满足条件的下标,就一直执行这个操作。在执行所有操作后,返回 words 。可以证明,按任意顺序为每步操作选

2022-05-15 18:26:56 190

原创 贪心算法5.14

2180. 统计各位数字之和为偶数的整数个数给你一个正整数 num ,请你统计并返回 小于或等于 num 且各位数字之和为 偶数 的正整数的数目。正整数的 各位数字之和 是其所有位上的对应数字相加的结果。示例 1:输入:num = 4输出:2解释:只有 2 和 4 满足小于等于 4 且各位数字之和为偶数。 简单模拟即可2181. 合并零之间的节点给你一个链表的头节点 head ,该链表包含由 0 分隔开的一连串整数。链表的 开端 和 末尾 的节点都满足 Node.

2022-05-14 14:57:11 221

原创 贪心,数学思想5.13

2169. 得到 0 的操作数给你两个 非负 整数 num1 和 num2 。每一步 操作中,如果 num1 >= num2 ,你必须用 num1 减 num2 ;否则,你必须用 num2 减 num1 。例如,num1 = 5 且 num2 = 4 ,应该用num1 减 num2 ,因此,得到 num1 = 1 和 num2 = 4 。然而,如果 num1 = 4且 num2 = 5 ,一步操作后,得到 num1 = 4 和 num2 = 1 。返回使 num1 = 0 或 num..

2022-05-13 14:31:20 130

原创 堆5.12

23. 合并K个升序链表给你一个链表数组,每个链表都已经按升序排列。请你将所有链表合并到一个升序链表中,返回合并后的链表。示例 1:输入:lists = [[1,4,5],[1,3,4],[2,6]]输出:[1,1,2,3,4,4,5,6]解释:链表数组如下:[ 1->4->5, 1->3->4, 2->6]将它们合并到一个有序链表中得到。1->1->2->3->4->4->5->6第

2022-05-12 20:42:39 43

原创 C语言链表复习(期末考试)5.11

struct Listnode{ int data; struct Listnode *next;};通过尾插法创建一个链表struct Listnode *create(){ struct Listnode *head = (struct Listnode*)malloc(sizeof(struct Listnode)); struct Listnode *t = head,*n = NULL; //头节点尾节点新节点的定义 int dat.

2022-05-11 20:53:17 358

原创 简单DP5.9

6058. 统计打字方案数Alice 在给 Bob 用手机打字。数字到字母的 对应如下图所示。为了 打出一个字母,Alice 需要 按对应字母 i次,i是该字母在这个按键上所处的位置。比方说,为了按出字母's',Alice 需要按'7'四次。类似的, Alice 需要按'5'两次得到字母'k'。 注意,数字'0' 和'1'不映射到任何字母,所以Alice 不使用它们。但是,由于传输的错误,Bob 没有收到 Alice 打字的字母信息,反而收到了 按键...

2022-05-10 07:59:29 71

原创 二叉树5.8

6056. 字符串中最大的 3 位相同数字给你一个字符串 num ,表示一个大整数。如果一个整数满足下述所有条件,则认为该整数是一个 优质整数 :该整数是 num 的一个长度为 3 的 子字符串 。 该整数由唯一一个数字重复 3 次组成。以字符串形式返回 最大的优质整数 。如果不存在满足要求的整数,则返回一个空字符串 "" 。注意:子字符串 是字符串中的一个连续字符序列。 num 或优质整数中可能存在 前导零 。非常简单一道模拟签到题6057. 统计值等于子树平均值的节点数给

2022-05-08 23:13:01 382

原创 差分数组5.7

2248. 多个数组求交集给你一个二维整数数组 nums ,其中 nums[i] 是由 不同 正整数组成的一个非空数组,按 升序排列 返回一个数组,数组中的每个元素在 nums所有数组 中都出现过。示例 1:输入:nums = [[3,1,2,4,5],[1,2,3,4],[3,4,5,6]]输出:[3,4]解释:nums[0] = [3,1,2,4,5],nums[1] = [1,2,3,4],nums[2] = [3,4,5,6],在 nums 中每个数组中都出现的数字是 3 和 .

2022-05-07 17:43:24 127

原创 python二叉树的创建5.6

56. 合并区间以数组 intervals 表示若干个区间的集合,其中单个区间为 intervals[i] = [starti, endi] 。请你合并所有重叠的区间,并返回 一个不重叠的区间数组,该数组需恰好覆盖输入中的所有区间 。示例 1:输入:intervals = [[1,3],[2,6],[8,10],[15,18]]输出:[[1,6],[8,10],[15,18]]解释:区间 [1,3] 和 [2,6] 重叠, 将它们合并为 [1,6].字节面试基础算法题(一次AC)

2022-05-06 10:19:41 542

原创 实现能力提升5.5

2202. K 次操作后最大化顶端元素给你一个下标从 0 开始的整数数组 nums ,它表示一个 栈 ,其中 nums[0] 是栈顶的元素。每一次操作中,你可以执行以下操作 之一 :如果栈非空,那么 删除栈顶端的元素。 如果存在 1 个或者多个被删除的元素,你可以从它们中选择任何一个,添加回栈顶,这个元素成为新的栈顶元素。同时给你一个整数 k ,它表示你总共需要执行操作的次数。请你返回 恰好 执行 k 次操作以后,栈顶元素的 最大值 。如果执行完 k 次操作以后,栈一定为空,请你返回..

2022-05-05 11:20:31 66

原创 双指针算法5.4

回文链表给定一个链表的头结点 head,判断链表删除一个节点后是否可以成为「回文链表」。若可以,则返回 true;否则返回 false注意:输入用例均保证链表长度 大于等于 3示例 1:输入:head = [1,2,2,3,1]输出:true解释:如下图所示,蓝色结点为删除的结点删除该节点后,链表为「回文链表」 [1,2,2,1],返回 true首先把链表取出换成更好处理的数据结构初步想法是对每个节点遍历尝试删除,再判断删除之后的表是不是回文。这样处理的复杂.

2022-05-05 08:31:08 93

原创 数据结构堆5.3

2206. 将数组划分成相等数对给你一个整数数组 nums ,它包含 2 * n 个整数。你需要将 nums 划分成 n 个数对,满足:每个元素 只属于一个 数对。 同一数对中的元素 相等。如果可以将 nums 划分成 n 个数对,请你返回 true ,否则返回 false 。哈希表O(n)遍历,所有的元素出现次数都是偶数则返回true,优化方向可以为在遍历过程中判断奇偶性,可以减少一次哈希表的遍历2207. 字符串中最多数目的子字符串给你一个下标从 0开始的字符串t...

2022-05-03 17:13:29 964

原创 二进制枚举5.2

2212. 射箭比赛中的最大得分Alice 和 Bob 是一场射箭比赛中的对手。比赛规则如下:Alice 先射 numArrows 支箭,然后 Bob 也射 numArrows 支箭。 分数按下述规则计算: 箭靶有若干整数计分区域,范围从 0 到 11 (含 0 和 11)。 箭靶上每个区域都对应一个得分 k(范围是 0 到 11),Alice 和 Bob 分别在得分 k区域射中ak 和 bk 支箭。如果 ak >= bk ,那么 Alice 得 k 分。如果 a...

2022-05-02 13:47:03 388

原创 哈希表5.1

给你一个整数数组 cards ,其中 cards[i] 表示第 i 张卡牌的 值 。如果两张卡牌的值相同,则认为这一对卡牌 匹配 。返回你必须拿起的最小连续卡牌数,以使在拿起的卡牌中有一对匹配的卡牌。如果无法得到一对匹配的卡牌,返回 -1 。输入:cards = [3,4,2,3,4,7]输出:4解释:拿起卡牌 [3,4,2,3] 将会包含一对值为 3 的匹配卡牌。注意,拿起 [4,2,3,4] 也是最优方案。python的字典可以看作一种哈希表哈希表是通过键来访问值的数据结构

2022-05-02 08:22:04 226

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除