- 博客(4)
- 收藏
- 关注
原创 LeetCode:203. 移除链表元素
给你一个链表的头节点 head 和一个整数 val ,请你删除链表中所有满足 Node.val == val 的节点,输入:head = [1,2,6,3,4,5,6], val = 6。输入:head = [7,7,7,7], val = 7。列表中的节点数目在范围 [0, 104] 内。输入:head = [], val = 1。3、返回的是哨兵节点的next节点。输出:[1,2,3,4,5]2、删除符合条件节点的方式。并返回 新的头节点。1、遍历整个链表的方式。
2023-07-23 17:43:09 48
原创 LeetCode:977. 有序数组的平方
给你一个按 非递减顺序 排序的整数数组 nums,返回 每个数字的平方 组成的新数组,要求也按 非递减顺序 排序。数组是非递减的,这种排好序的立马应想到二分法,但不太一样的是平方后就不一定是有序的了;但是考虑到平方后数组的最大值肯定是在两端。解释:平方后,数组变为 [16,1,0,9,100]输入:nums = [-4,-1,0,3,10]输入:nums = [-7,-3,2,3,11]排序后,数组变为 [0,1,9,16,100]输出:[0,1,9,16,100]输出:[4,9,9,49,121]
2023-07-19 16:51:47 33
原创 leetcode:27. 移除元素
首先如果不考虑题目的要求“不要使用额外的数组空间,你必须仅使用 O(1) 额外空间并 原地 修改输入数组”,那么很容易可以想到:再开辟一个列表,遍历原数组的元素,把不是val的元素添加到新列表当中。当fast指针在遍历时,不是val时,就把值赋给slow,当遇到val时,slow暂停,fast继续往前走,相当于这次的赋值取消了,跳过了这次赋值。外层循环遍历数组元素,当遇见了要删除的元素时,后面的元素整体往前移动一位,把这个元素给覆盖住,相当于删除了这个元素,数组的长度也减1。也就是说,不对实参作任何拷贝。
2023-07-15 23:07:00 61
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人