Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commit3d2b2c0

Browse files
authored
Sri Hari: Batch-7/Added articles (#4148)
* Batch-7/Neetcode-ALL/Added-articles* Batch-7/Neetcode-ALL/Added-articles* Batch-7/Neetcode-ALL/Added-articles* Batch-7/Neetcode-ALL/Added-articles* Batch-7/Neetcode-ALL/Added-articles* Batch-7/Neetcode-ALL/Added-articles* Batch-7/Neetcode-ALL/Added-articles* Batch-7/Neetcode-ALL/Added-articles* Batch-7/Neetcode-ALL/Added-articles* Batch-7/Neetcode-ALL/Added-articles* Batch-7/Neetcode-ALL/Added-articles* Batch-7/Neetcode-ALL/Added-articles* Batch-7/Neetcode-ALL/Added-articles
1 parentef387b1 commit3d2b2c0

File tree

51 files changed

+6476
-53
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

51 files changed

+6476
-53
lines changed

‎articles/4sum.md

Lines changed: 163 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -96,6 +96,35 @@ class Solution {
9696
}
9797
```
9898

99+
```csharp
100+
publicclassSolution {
101+
publicList<List<int>>FourSum(int[]nums,inttarget) {
102+
intn=nums.Length;
103+
Array.Sort(nums);
104+
HashSet<(int,int,int,int)>res=newHashSet<(int,int,int,int)>();
105+
106+
for (inta=0;a<n;a++) {
107+
for (intb=a+1;b<n;b++) {
108+
for (intc=b+1;c<n;c++) {
109+
for (intd=c+1;d<n;d++) {
110+
longsum= (long)nums[a]+nums[b]+nums[c]+nums[d];
111+
if (sum==target) {
112+
res.Add((nums[a],nums[b],nums[c],nums[d]));
113+
}
114+
}
115+
}
116+
}
117+
}
118+
119+
varresult=newList<List<int>>();
120+
foreach (varquadinres) {
121+
result.Add(newList<int> {quad.Item1,quad.Item2,quad.Item3,quad.Item4 });
122+
}
123+
returnresult;
124+
}
125+
}
126+
```
127+
99128
::tabs-end
100129

101130
###Time & Space Complexity
@@ -287,6 +316,58 @@ class Solution {
287316
}
288317
```
289318

319+
```csharp
320+
publicclassSolution {
321+
publicList<List<int>>FourSum(int[]nums,inttarget) {
322+
Array.Sort(nums);
323+
Dictionary<int,int>count=newDictionary<int,int>();
324+
325+
foreach (intnuminnums) {
326+
if (!count.ContainsKey(num)) {
327+
count[num]=0;
328+
}
329+
count[num]++;
330+
}
331+
332+
List<List<int>>res=newList<List<int>>();
333+
334+
for (inti=0;i<nums.Length;i++) {
335+
count[nums[i]]--;
336+
if (i>0&&nums[i]==nums[i-1])continue;
337+
338+
for (intj=i+1;j<nums.Length;j++) {
339+
count[nums[j]]--;
340+
if (j>i+1&&nums[j]==nums[j-1])continue;
341+
342+
for (intk=j+1;k<nums.Length;k++) {
343+
count[nums[k]]--;
344+
if (k>j+1&&nums[k]==nums[k-1])continue;
345+
346+
longfourth= (long)target- (long)nums[i]- (long)nums[j]- (long)nums[k];
347+
if (fourth>int.MaxValue||fourth<int.MinValue) {
348+
continue;
349+
}
350+
351+
if (count.ContainsKey((int)fourth)&&count[(int)fourth]>0) {
352+
res.Add(newList<int> {nums[i],nums[j],nums[k], (int)fourth });
353+
}
354+
}
355+
356+
for (intk=j+1;k<nums.Length;k++) {
357+
count[nums[k]]++;
358+
}
359+
}
360+
361+
for (intj=i+1;j<nums.Length;j++) {
362+
count[nums[j]]++;
363+
}
364+
}
365+
366+
returnres;
367+
}
368+
}
369+
```
370+
290371
::tabs-end
291372

292373
###Time & Space Complexity
@@ -448,6 +529,42 @@ class Solution {
448529
}
449530
```
450531

532+
```csharp
533+
publicclassSolution {
534+
publicList<List<int>>FourSum(int[]nums,inttarget) {
535+
Array.Sort(nums);
536+
List<List<int>>res=newList<List<int>>();
537+
intn=nums.Length;
538+
539+
for (inti=0;i<n;i++) {
540+
if (i>0&&nums[i]==nums[i-1])continue;
541+
542+
for (intj=i+1;j<n;j++) {
543+
if (j>i+1&&nums[j]==nums[j-1])continue;
544+
545+
intleft=j+1,right=n-1;
546+
while (left<right) {
547+
longsum= (long)nums[i]+nums[j]+nums[left]+nums[right];
548+
if (sum==target) {
549+
res.Add(newList<int> {nums[i],nums[j],nums[left],nums[right] });
550+
left++;
551+
right--;
552+
while (left<right&&nums[left]==nums[left-1])left++;
553+
while (left<right&&nums[right]==nums[right+1])right--;
554+
}elseif (sum<target) {
555+
left++;
556+
}else {
557+
right--;
558+
}
559+
}
560+
}
561+
}
562+
563+
returnres;
564+
}
565+
}
566+
```
567+
451568
::tabs-end
452569

453570
###Time & Space Complexity
@@ -637,6 +754,52 @@ class Solution {
637754
}
638755
```
639756

757+
```csharp
758+
publicclassSolution {
759+
privateList<List<int>>res;
760+
privateList<int>quad;
761+
762+
publicList<List<int>>FourSum(int[]nums,inttarget) {
763+
Array.Sort(nums);
764+
res=newList<List<int>>();
765+
quad=newList<int>();
766+
KSum(nums,4,0,target);
767+
returnres;
768+
}
769+
770+
privatevoidKSum(int[]nums,intk,intstart,longtarget) {
771+
if (k==2) {
772+
intl=start,r=nums.Length-1;
773+
while (l<r) {
774+
longsum= (long)nums[l]+nums[r];
775+
if (sum<target) {
776+
l++;
777+
}elseif (sum>target) {
778+
r--;
779+
}else {
780+
List<int>newQuad=newList<int>(quad);
781+
newQuad.Add(nums[l]);
782+
newQuad.Add(nums[r]);
783+
res.Add(newQuad);
784+
l++;
785+
r--;
786+
while (l<r&&nums[l]==nums[l-1])l++;
787+
while (l<r&&nums[r]==nums[r+1])r--;
788+
}
789+
}
790+
return;
791+
}
792+
793+
for (inti=start;i<nums.Length-k+1;i++) {
794+
if (i>start&&nums[i]==nums[i-1])continue;
795+
quad.Add(nums[i]);
796+
KSum(nums,k-1,i+1,target-nums[i]);
797+
quad.RemoveAt(quad.Count-1);
798+
}
799+
}
800+
}
801+
```
802+
640803
::tabs-end
641804

642805
###Time & Space Complexity

0 commit comments

Comments
 (0)

[8]ページ先頭

©2009-2025 Movatter.jp