自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 洛谷算法提单

学校正在选举学生会成员,有 �n(�≤999n≤999)名候选人,每名候选人编号分别从 11 到 �n,现在收集到了 �m(�≤2000000m≤2000000)张选票,每张选票都写了一个候选人编号。因为候选人一定,且有序号,并且选票也为相应序号,因此可以用数组的下标,代替候选人的序号,该位置的值代替票数的数目。对于 100%100% 的数据,有 1≤�≤1051≤N≤105,1≤��≤1091≤ai​≤109。第二行包含 �N 个空格隔开的正整数 ��ai​,为你需要进行排序的数。求出排序后的选票编号。

2024-02-05 17:49:48 409

原创 二叉树的先序,中序,后序,遍历

二叉树的递归遍历算法,比较类似,通过改变语句的顺序就可类似的实现,先序中序后序的遍历递归算法。递归的出口为遇到空节点。

2023-10-18 19:24:10 59 1

原创 移除链表元素

给你一个链表的头节点 head 和一个整数 val ,请你删除链表中所有满足 Node.val == val 的节点,并返回 新的头节点。输入:head = [1,2,6,3,4,5,6], val = 6输出:[1,2,3,4,5]示例 2:输入:head = [], val = 1输出:[]示例 3:输入:head = [7,7,7,7], val = 7输出:[]

2023-09-11 16:11:19 72

原创 PTA单链表的逆转

其中List结构定义如下:/* 存储结点数据 */ PtrToNode Next;/* 指向下一个结点的指针 */ };/* 定义单链表类型 */L是给定单链表,函数Reverse要返回被逆转后的链表。

2023-09-09 17:01:52 245 1

原创 删除数组中的重复项-||

解释:函数应返回新长度 length = 7, 并且原数组的前五个元素被修改为 0, 0, 1, 1, 2, 3, 3。解释:函数应返回新长度 length = 5, 并且原数组的前五个元素被修改为 1, 1, 2, 2, 3。输入:nums = [0,0,1,1,1,1,2,3,3]输出:7, nums = [0,0,1,1,2,3,3]输出:5, nums = [1,1,2,2,3]// 在函数里修改输入数组对于调用者是可见的。输入:nums = [1,1,1,2,2,3]

2023-09-09 10:36:53 145 1

原创 寻找两个正序数组的中位数

给定两个大小分别为 m 和 n 的正序(从小到大)数组 nums1 和 nums2。请你找出并返回这两个正序数组的 中位数。算法的时间复杂度应该为 O(log (m+n))。示例 1:输入:nums1 = [1,3], nums2 = [2]输出:2.00000解释:合并数组 = [1,2,3] ,中位数 2示例 2:输入:nums1 = [1,2], nums2 = [3,4]输出:2.50000。

2023-09-09 09:59:33 66 1

原创 合并两个有序数组

输入:nums1 = [1,2,3,0,0,0], m = 3, nums2 = [2,5,6], n = 3。合并结果是 [1,2,2,3,5,6] ,其中斜体加粗标注的为 nums1 中的元素。输入:nums1 = [0], m = 0, nums2 = [1], n = 1。输入:nums1 = [1], m = 1, nums2 = [], n = 0。解释:需要合并 [1,2,3] 和 [2,5,6]。解释:需要合并的数组是 [] 和 [1]。输出:[1,2,2,3,5,6]

2023-09-08 21:04:07 64 1

原创 删除有序数组中的重复项

给你一个 升序排列 的数组 nums ,请你 原地 删除重复出现的元素,使每个元素 只出现一次 ,返回删除后数组的新长度。更改数组 nums ,使 nums 的前 k 个元素包含唯一元素,并按照它们最初在 nums 中出现的顺序排列。解释:函数应该返回新的长度 5 , 并且原数组 nums 的前五个元素被修改为 0, 1, 2, 3, 4。解释:函数应该返回新的长度 2 ,并且原数组 nums 的前两个元素被修改为 1, 2。输入:nums = [0,0,1,1,1,2,2,3,3,4]

2023-09-07 20:04:45 110 1

原创 移除目标元素

例如,函数返回的新长度为 2 ,而 nums = [2,2,3,3] 或 nums = [2,2,0,0],也会被视作正确答案。解释:函数应该返回新的长度 5, 并且 nums 中的前五个元素为 0, 1, 3, 0, 4。给你一个数组 nums 和一个值 val,你需要 原地 移除所有数值等于 val 的元素,并返回移除后数组的新长度。输入:nums = [0,1,2,2,3,0,4,2], val = 2。输入:nums = [3,2,2,3], val = 3。输出:2, nums = [2,2]

2023-09-06 14:59:41 39 1

原创 所有奇数长度子数组的和

我们将所有值求和得到 1 + 4 + 2 + 5 + 3 + 7 + 11 + 10 + 15 = 58。解释:总共只有 2 个长度为奇数的子数组,[1] 和 [2]。}//三重循环分别控制起始位置,数组长度,相加末尾位置,在进行累加。给你一个正整数数组 arr ,请你计算所有可能的奇数长度子数组的和。请你返回 arr 中 所有奇数长度子数组的和。输入:arr = [1,4,2,5,3]输入:arr = [10,11,12]输入:arr = [1,2]所有奇数长度子数组的和。

2023-09-04 20:24:20 233 1

原创 PAT1043 输出PATest

给定一个长度不超过 104 的、仅由英文字母构成的字符串。请将字符重新调整顺序,按这样的顺序输出,并忽略其它字符。当然,六种字符的个数不一定是一样多的,若某种字符已经输出完,则余下的字符仍按 PATest 的顺序打印,直到所有字符都被输出。

2023-03-31 22:41:08 49 1

空空如也

空空如也

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

TA关注的人

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