mirror of
https://github.com/youngyangyang04/leetcode-master.git
synced 2025-07-08 00:43:04 +08:00
Merge pull request #1031 from zhangjiongwx/master
添加 0344.反转字符串、0541.反转字符串II、0015.三数之和、0018.四数之和 C#版本
This commit is contained in:
@ -545,5 +545,64 @@ int** threeSum(int* nums, int numsSize, int* returnSize, int** returnColumnSizes
|
||||
}
|
||||
```
|
||||
|
||||
C#:
|
||||
```csharp
|
||||
public class Solution
|
||||
{
|
||||
public IList<IList<int>> ThreeSum(int[] nums)
|
||||
{
|
||||
var result = new List<IList<int>>();
|
||||
|
||||
Array.Sort(nums);
|
||||
|
||||
for (int i = 0; i < nums.Length - 2; i++)
|
||||
{
|
||||
int n1 = nums[i];
|
||||
|
||||
if (n1 > 0)
|
||||
break;
|
||||
|
||||
if (i > 0 && n1 == nums[i - 1])
|
||||
continue;
|
||||
|
||||
int left = i + 1;
|
||||
int right = nums.Length - 1;
|
||||
|
||||
while (left < right)
|
||||
{
|
||||
int n2 = nums[left];
|
||||
int n3 = nums[right];
|
||||
int sum = n1 + n2 + n3;
|
||||
|
||||
if (sum > 0)
|
||||
{
|
||||
right--;
|
||||
}
|
||||
else if (sum < 0)
|
||||
{
|
||||
left++;
|
||||
}
|
||||
else
|
||||
{
|
||||
result.Add(new List<int> { n1, n2, n3 });
|
||||
|
||||
while (left < right && nums[left] == n2)
|
||||
{
|
||||
left++;
|
||||
}
|
||||
|
||||
while (left < right && nums[right] == n3)
|
||||
{
|
||||
right--;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
return result;
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
-----------------------
|
||||
<div align="center"><img src=https://code-thinking.cdn.bcebos.com/pics/01二维码一.jpg width=500> </img></div>
|
||||
|
@ -445,5 +445,67 @@ func fourSum(_ nums: [Int], _ target: Int) -> [[Int]] {
|
||||
}
|
||||
```
|
||||
|
||||
C#:
|
||||
```csharp
|
||||
public class Solution
|
||||
{
|
||||
public IList<IList<int>> FourSum(int[] nums, int target)
|
||||
{
|
||||
var result = new List<IList<int>>();
|
||||
|
||||
Array.Sort(nums);
|
||||
|
||||
for (int i = 0; i < nums.Length - 3; i++)
|
||||
{
|
||||
int n1 = nums[i];
|
||||
if (i > 0 && n1 == nums[i - 1])
|
||||
continue;
|
||||
|
||||
for (int j = i + 1; j < nums.Length - 2; j++)
|
||||
{
|
||||
int n2 = nums[j];
|
||||
if (j > i + 1 && n2 == nums[j - 1])
|
||||
continue;
|
||||
|
||||
int left = j + 1;
|
||||
int right = nums.Length - 1;
|
||||
|
||||
while (left < right)
|
||||
{
|
||||
int n3 = nums[left];
|
||||
int n4 = nums[right];
|
||||
int sum = n1 + n2 + n3 + n4;
|
||||
|
||||
if (sum > target)
|
||||
{
|
||||
right--;
|
||||
}
|
||||
else if (sum < target)
|
||||
{
|
||||
left++;
|
||||
}
|
||||
else
|
||||
{
|
||||
result.Add(new List<int> { n1, n2, n3, n4 });
|
||||
|
||||
while (left < right && nums[left] == n3)
|
||||
{
|
||||
left++;
|
||||
}
|
||||
|
||||
while (left < right && nums[right] == n4)
|
||||
{
|
||||
right--;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
return result;
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
-----------------------
|
||||
<div align="center"><img src=https://code-thinking.cdn.bcebos.com/pics/01二维码一.jpg width=500> </img></div>
|
||||
|
@ -253,6 +253,19 @@ void reverseString(char* s, int sSize){
|
||||
}
|
||||
```
|
||||
|
||||
C#:
|
||||
```csharp
|
||||
public class Solution
|
||||
{
|
||||
public void ReverseString(char[] s)
|
||||
{
|
||||
for (int i = 0, j = s.Length - 1; i < j; i++, j--)
|
||||
{
|
||||
(s[i], s[j]) = (s[j], s[i]);
|
||||
}
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
-----------------------
|
||||
<div align="center"><img src=https://code-thinking.cdn.bcebos.com/pics/01二维码一.jpg width=500> </img></div>
|
||||
|
@ -294,9 +294,21 @@ func reverseStr(_ s: String, _ k: Int) -> String {
|
||||
}
|
||||
```
|
||||
|
||||
|
||||
|
||||
|
||||
C#:
|
||||
```csharp
|
||||
public class Solution
|
||||
{
|
||||
public string ReverseStr(string s, int k)
|
||||
{
|
||||
Span<char> span = s.ToCharArray().AsSpan();
|
||||
for (int i = 0; i < span.Length; i += 2 * k)
|
||||
{
|
||||
span[i + k < span.Length ? i..(i + k) : i..].Reverse();
|
||||
}
|
||||
return span.ToString();
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
-----------------------
|
||||
<div align="center"><img src=https://code-thinking.cdn.bcebos.com/pics/01二维码一.jpg width=500> </img></div>
|
||||
|
Reference in New Issue
Block a user