- 字符串的最大公因子-1071
对于字符串 s 和 t,只有在 s = t + ... + t(t 自身连接 1 次或多次)时,我们才认定 “t 能除尽 s”。
给定两个字符串 str1 和 str2 。返回 最长字符串 x,要求满足 x 能除尽 str1 且 x 能除尽 str2 。
---
```C#
public string GcdOfStrings(string str1,
- 链表和数组的区别
链表和数组是两种常见的数据结构,它们在存储和访问数据方面有着不同的特点。
---
存储方式:
数组:数组是一种连续的内存块,用于存储相同类型的元素。在内存中,数组的元素按照索引顺序排列。
链表:链表由节点组成,每个节点包含存储的元素和指向下一个节点的指针。节点在内存中可以是非连续的,它们通过指针链接在一起。
---
插入和删除操作:
数组:在数组中插入或删除元
- 螺旋矩阵-54
给你一个 m 行 n 列的矩阵 matrix ,请按照 顺时针螺旋顺序 ,返回矩阵中的所有元素。
---
```C#
public IList SpiralOrder(int[][] matrix)
{
var list = new List();
var row = matrix.Length;
var column = matrix[
- 图像渲染-733
有一幅以 m x n 的二维整数数组表示的图画 image ,其中 image[i][j] 表示该图画的像素值大小。
你也被给予三个整数 sr , sc 和 newColor 。你应该从像素 image[sr][sc] 开始对图像进行 上色填充 。
为了完成 上色工作 ,从初始像素开始,记录初始坐标的 上下左右四个方向上 像素值与初始坐标相同的相连像素点,接着再记录这
- 全排列-46-腾讯
给定一个不含重复数字的数组 nums ,返回其 所有可能的全排列 。你可以 按任意顺序 返回答案。
示例 1:
输入:nums = [1,2,3]
输出:[[1,2,3],[1,3,2],[2,1,3],[2,3,1],[3,1,2],[3,2,1]]
提示:
1 <= nums.length <= 6
-10 <= nums[i] <= 10
nums 中的所有整数 互不相同
---
```C#
private int[] __nums;
private List> __result;
public IList> Permute(int[] nums)
{
- 最长回文子串-05-腾讯
给你一个字符串 s,找到 s 中最长的回文子串。
如果字符串的反序与原始字符串相同,则该字符串称为回文字符串。
示例 1:
输入:s = "babad"
输出:"bab"
解释:"aba" 同样是符合题意的答案。
提示:
1 <= s.length <= 1000
s 仅由数字和英文字母组成
---
```C#
public string LongestPalindrome(string s)
{
//设置窗口大小
for (var i = s.Length - 1; i >= 1; i--)
{
//滑动窗口
for (var j = 0; j < s.Length - i; j++)
{
var l = j;
var r = j + i;
while (l < r)
{
if (s[l] != s[r])
{
break;
}
l++;
r--;
}
if (l >= r)
- 不同路径-62
一个机器人位于一个 m x n 网格的左上角 (起始点在下图中标记为 “Start” )。
机器人每次只能向下或者向右移动一步。机器人试图达到网格的右下角(在下图中标记为 “Finish” )。
问总共有多少条不同的路径?
示例 1:
![robot_maze.png](https://tools.nxcloud.club:12500/images/2023/08/07/
- 字符串相乘
给定两个以字符串形式表示的非负整数 num1 和 num2,返回 num1 和 num2 的乘积,它们的乘积也表示为字符串形式。
注意:不能使用任何内置的 BigInteger 库或直接将输入转换为整数。
示例 2:
输入: num1 = "123", num2 = "456"
输出: "56088"
提示:
1 <= num1.length, num2.length <= 200
num1 和 num2 只能由数字组成。
num1 和 num2 都不包含任何前导零,除了数字0本身
---
```C#
public string Multiply(string num1, string num2)
{
if (num1 == "0" || num2 == "0")
{
return "0";
}
var str = new List();
var sb = new StringBui
- 删除有序数组中的重复项-26
给你一个 升序排列 的数组 nums ,请你 原地 删除重复出现的元素,使每个元素 只出现一次 ,返回删除后数组的新长度。元素的 相对顺序 应该保持 一致 。然后返回 nums 中唯一元素的个数。
考虑 nums 的唯一元素的数量为 k ,你需要做以下事情确保你的题解可以被通过:
更改数组 nums ,使 nums 的前 k 个元素包含唯一元素,并按照它们最
- 除法求值-399
给你一个变量对数组 equations 和一个实数值数组 values 作为已知条件,其中 equations[i] = [Ai, Bi] 和 values[i] 共同表示等式 Ai / Bi = values[i] 。每个 Ai 或 Bi 是一个表示单个变量的字符串。
另有一些以数组 queries 表示的问题,其中 queries[j] = [Cj, Dj] 表示第