算法刷题
文章平均质量分 71
萏语
计算机类博主,来提升自己,从0开始!算法、python、机器学习、前端!
展开
-
LeetCode.19删除链表的倒数第N个节点(双指针,基本法)
给你一个链表,删除链表的倒数第 `n` 个结点,并且返回链表的头结点。原创 2023-11-29 12:54:41 · 419 阅读 · 2 评论 -
LeetCode.24两两交换链表中的节点
给你一个链表,两两交换其中相邻的节点,并返回交换后链表的头节点。你必须在不修改节点内部的值的情况下完成本题(即,只能进行节点交换)。原创 2023-11-28 15:25:15 · 1113 阅读 · 2 评论 -
掌握反转链表的艺术:LeetCode 206 深入解析与优化 - 双指针与递归方法精讲
给你单链表的头节点 `head` ,请你反转链表,并返回反转后的链表。双指针和递归解题!原创 2023-11-27 21:44:58 · 1046 阅读 · 0 评论 -
LeetCode.707设计链表(链表相关操作一篇就够了)
单链表相关操作,插入,删除等原创 2023-11-26 21:10:46 · 1371 阅读 · 4 评论 -
LeetCode.203移除链表元素(原链表操作、虚拟头结点)
给你一个链表的头节点 head 和一个整数 val ,请你删除链表中所有满足 Node.val == val 的节点,并返回 新的头节点 。原创 2023-11-25 20:57:40 · 7782 阅读 · 4 评论 -
数组基础知识
数组是存放在连续内存空间上的相同类型数据的集合。数组可以方便的通过下标索引的方式获取到下标下对应的数据。数组下标都是从0开始的。数组内存空间的地址是连续的。原创 2023-11-24 22:45:45 · 689 阅读 · 0 评论 -
LeetCode.88合并两个有序数组
给你两个按 **非递减顺序** 排列的整数数组 `nums1` 和 `nums2`,另有两个整数 `m` 和 `n` ,分别表示 `nums1` 和 `nums2` 中的元素数目。请你 **合并** `nums2` 到 `nums1` 中,使合并后的数组同样按 **非递减顺序** 排列。**注意**:最终,合并后数组不应由函数返回,而是存储在数组 `nums1` 中。为了应对这种情况,`nums1` 的初始长度为 `m + n`,其中前 `m` 个元素表示应合并的元素,后 `n` 个元素为 `0`原创 2023-11-24 10:09:34 · 489 阅读 · 1 评论 -
LeetCode.283移动零(双指针)
给定一个数组 `nums`,编写一个函数将所有 `0` 移动到数组的末尾,同时保持非零元素的相对顺序。原创 2023-11-23 19:10:57 · 562 阅读 · 0 评论 -
LeetCode59.螺旋矩阵
我们要画每四条边,这四条边怎么画,每画一条边都要坚持一致的左闭右开,或者左开右闭的原则,这样这一圈才能按照统一的规则画下来。所有元素,且元素按顺时针顺序螺旋排列的。原创 2023-11-22 21:18:07 · 7772 阅读 · 0 评论 -
LeetCode209.长度最小的子数组(滑动窗口法、暴力法)
给定一个含有 n 个正整数的数组和一个正整数 target 。找出该数组中满足其总和大于等于 target 的长度最小的 连续子数组 [numsl, numsl+1, ..., numsr-1, numsr] ,并返回其长度。如果不存在符合条件的子数组,返回 0 。原创 2023-11-22 00:07:58 · 547 阅读 · 2 评论 -
LeetCode977.有序数组的平方(双指针法、暴力法、列表推导式)
给你一个按 非递减顺序 排序的整数数组 nums,返回 每个数字的平方 组成的新数组,要求也按 非递减顺序 排序。原创 2023-11-20 21:56:35 · 1531 阅读 · 1 评论 -
LeetCode26.删除有序数组中的重复项(双指针法)
将目前位置与前一个位置上的数进行对比,如果一样,就移动指针去下一个位置访问下一个元素。如果不一样,赋值给慢指针。慢指针只要目前为止被填充了新值,就再向后移动一位。** 删除重复出现的元素,使每个元素。,返回删除后数组的新长度。原创 2023-11-19 12:49:00 · 774 阅读 · 4 评论 -
LeetCode27.移除元素(暴力法、快慢指针法)
的元素,并返回移除后数组的新长度。不要使用额外的数组空间,你必须仅使用。元素的顺序可以改变。你不需要考虑数组中超出新长度后面的元素。问题描述:给你一个数组。python:快慢指针法。python:暴力法。原创 2023-11-19 12:16:26 · 602 阅读 · 0 评论 -
LeetCode704.二分查找及二分法
如果某一特定元素大于或者小于中间元素,则在数组大于或小于中间元素的那一半中查找,而且跟开始一样从中间元素开始比较。我们要在一组升序的数组找一个数的下标,那我们肯定是先拿中间的与他进行比较,比较大小的判断,其实就相当于是这个性质,且这个 性质满足二段性,将大于和小于我们要查找的值分为两段,而我们的查找结果就是。,因为一旦有重复元素,使用二分查找法返回的元素下标可能不是唯一的,这些都是使用二分法的前提条件②二分查找涉及的很多的边界条件,逻辑比较简单,但就是写不好。python:(版本一)左闭右闭区间。原创 2023-11-18 22:32:43 · 608 阅读 · 2 评论