自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 第六章 二叉树 part04

【代码】第六章 二叉树 part04。

2024-07-18 21:02:50 226

原创 二叉树part03

给出一个完全二叉树,求出该树的节点个数。输入:root = [1] 输出:1。

2024-07-18 20:55:44 268

原创 二叉树 part02

如果是相等的则不需要处理,继续向下递归即可。

2024-07-16 20:51:36 312

原创 二叉树part01

【代码】二叉树part01。

2024-07-15 20:38:16 181

原创 栈与队列part02

输入: [“2”, “1”, “+”, “3”, " * "] 输出: 9 解释: 该算式转化为常见的中缀算术表达式为:((2 + 1) *输入: [“4”, “13”, “5”, “/”, “+”] 输出: 6 解释: 该算式转化为常见的中缀算术表达式为:(4 + (13 /给定逆波兰表达式总是有效的。换句话说,表达式总会得出有效数值且不存在除数为 0 的情况。有效的运算符包括 + , - , * , /。每个运算对象可以是整数,也可以是另一个逆波兰表达式。根据 逆波兰表示法,求表达式的值。

2024-07-14 22:11:47 136

原创 栈与队列part01

void push(int x) 将元素 x 推到队列的末尾 int pop() 从队列的开头移除并返回元素 int peek()输入:“abbaca” 输出:“ca” 解释:例如,在 “abbaca” 中,我们可以删除 “bb”给定一个只包括 ‘(’,‘)’,‘{’,‘}’,‘[’,‘]’ 的字符串,判断字符串是否有效。给出由小写字母组成的字符串 S,重复项删除操作会选择两个相邻且相同的字母,并删除它们。在完成所有重复项删除操作后返回最终的字符串。可以执行重复项删除操作,所以最后的字符串为 “ca”。

2024-07-14 21:34:50 272

原创 字符串part02

示例 2: 输入: " hello world!" 输出: “world!示例 1: 输入: “the sky is blue” 输出: “blue is sky the”整体的反转思路如上注释所写,具体的细节需要注意,多余的空格如何删除,这些都要注意。输入字符串可以在前面或者后面包含多余的空格,但是反转后的字符不能包括。如果两个单词间有多余的空格,将反转后单词间的空格减少到只含一个。给定一个字符串,逐个翻转字符串中的每个单词。

2024-07-14 21:19:45 209

原创 字符串part01

首先第一点,for循环的i+=2*k很巧妙,其次,剩余字符如果大于k小于2k,则end的位置只有前k,如果剩余字符小于k则全部反转,所以反转共用同一个,注意end的取值。示例 2: 输入:[“H”,“a”,“n”,“n”,“a”,“h”] 输出:[“h”,“a”,“n”,“n”,“a”,“H”]示例 1: 输入:[“h”,“e”,“l”,“l”,“o”] 输出:[“o”,“l”,“l”,“e”,“h”]如果剩余字符小于 2k 但大于或等于 k 个,则反转前 k 个字符,其余字符保持原样。

2024-07-10 21:46:56 301

原创 第三章 哈希表part02

给定四个包含整数的数组列表 A , B , C , D ,计算有多少个元组 (i, j, k, l) ,使得 A[i] + B[j] + C[k] + D[l] = 0。示例: 给定数组 nums = [1, 0, -1, 0, -2, 2],和 target = 0。(题目说明:为了不暴露赎金信字迹,要从杂志上搜索各个需要的字母,组成单词来表达意思。满足要求的三元组集合为: [ [-1, 0, 1], [-1, -1, 2] ]给定数组 nums = [-1, 0, 1, 2, -1, -4],

2024-07-09 22:26:27 1523

原创 第三章 哈希表part01

输入:19 输出:true 解释: 1^2 + 9^2 = 82 8^2 + 2^2 = 68 6^2 + 8^2 = 100 1^2 +「快乐数」定义为:对于一个正整数,每一次将该数替换为它每个位置上的数字的平方和,然后重复这个过程直到这个数变为 1,也可能是 无限循环。给定一个整数数组 nums 和一个目标值 target,请你在该数组中找出和为目标值的那 两个 整数,并返回他们的数组下标。总结,使用数组去解这道题最方便,因为给定了数组的大小是26,所以可以使用数组去模拟set的实现过程。

2024-07-08 21:55:51 647

原创 day03链表1

示例 1: 输入:head = [1,2,6,3,4,5,6], val = 6 输出:[1,2,3,4,5]示例 2: 输入:head = [], val = 1 输出:[]题意:删除链表中等于给定值 val 的所有节点。添加一个虚拟头节点,这样整体操作较简单。注意返回值,注意这个换的顺序。

2024-07-06 21:59:00 130

原创 day04链表part02

给你一个链表,两两交换其中相邻的节点,并返回交换后链表的头节点。你必须在不修改节点内部的值的情况下完成本题(即,只能进行节点交换)。一般情况下复制链表进行移位操作,这样的话在操作完可以对该链表重新赋值。3、注意while循环内部的迭代的值是否可以每次都更新。双指针法,注意fast指针到底要要移到哪一个位置上。1、注意ACM模式下要自己写链表的定于。2、考虑虚拟节点的设置。

2024-07-06 19:20:53 197

原创 数组part2

1: 输入:target = 7, nums = [2,3,1,2,4,3] 输出:2 解释:子数组 [4,3]输入:target = 11, nums = [1,1,1,1,1,1,1,1] 输出:0。输入:nums = [-4,-1,0,3,10] 输出:[0,1,9,16,100]输入:nums = [-7,-3,2,3,11] 输出:[4,9,9,49,121]2、根据题目中给的数组是有序的,可以考虑使用双指针的方法,注意等号的条件。解释:平方后,数组变为 [16,1,0,9,100]

2024-07-04 22:02:48 567

原创 数组part01

题目链接:题目给定一个 n 个元素有序的(升序)整型数组 nums 和一个目标值 target ,写一个函数搜索 nums 中的 target,如果目标值存在返回下标,否则返回 -1。示例 1:输入: nums = [-1,0,3,5,9,12], target = 9输出: 4解释: 9 出现在 nums 中并且下标为 4示例 2:输入: nums = [-1,0,3,5,9,12], target = 2输出: -1解释: 2 不存在 nums 中因此返回 -1。

2024-07-02 21:38:13 217

空空如也

空空如也

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

TA关注的人

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