一、链表基础理论 链表是一种通过指针串联在一起的线性结构,每一个节点由两部分组成,一个是数据域一个是指针域(存放指向下一个节点的指针),最后一个节点的指针域指向null(空指针的意思)。 链表的入口节点称为链表的头结点也就是head。 如图所示: 1.1 链表的类型 接下来说一下链表的几种类型 单链表单链表是最简单的链表,每个节点只有一个指针域,指…
螺旋矩阵 1.leetcode 59题 螺旋矩阵Ⅱ 原题链接 59. 螺旋矩阵 II 给你一个正整数 n ,生成一个包含 1 到 n2 所有元素,且元素按顺时针顺序螺旋排列的 n x n 正方形矩阵 matrix 。 示例 1: 输入:n = 3 输出:[[1,2,3],[8,9,4],[7,6…
长度最小的子数组 1. 长度最小的子数组 原题链接: 长度最小的子数组 给定一个含有 n 个正整数的数组和一个正整数 target 。 找出该数组中满足其总和大于等于 target 的长度最小的 连续 子数组 [numsl, numsl+1, ..., numsr-1, numsr] ,并返回其长度。如果不存在符合条件的子数组,返回 0 。 示例 …
移除元素 1. leetcode 27题 移除元素 原题链接:27. 移除元素 给你一个数组 nums 和一个值 val,你需要 原地 移除所有数值等于 val 的元素,并返回移除后数组的新长度。 不要使用额外的数组空间,你必须仅使用 O(1) 额外空间并 原地修改输入数组。 元素的顺序可以改变。你不需要考虑数组中超出新长度后面的元素。 说明: 为…
一、数组基础理论 数组在内存中的存储方式:数组是存放在连续内存空间上的相同类型数据的集合,数组可以方便的通过下标索引的方式获取到下表对应的数据。 ⭐注意: 数组下标都是从0开始的; 数组内存空间的地址是连续的 因为数组在内存空间的地址是连续的,所以我们在删除或增添元素的时候,就难免要移动其他元素的地址。 数组的元素是不能删除的,只能覆盖。 如删除下…