Skip to content

Commit 922b886

Browse files
author
Gonzalo Diaz
committed
[REFACTOR] Check null arguments
1 parent 3674632 commit 922b886

21 files changed

+63
-43
lines changed

src/algorithm_exercises_csharp/hackerrank/interview_preparation_kit/arrays/ArraysLeftRotation.cs

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,8 @@ protected ArraysLeftRotation() { }
1616
*/
1717
public static List<int> rotLeftOne(List<int> input)
1818
{
19+
ArgumentNullException.ThrowIfNull(input);
20+
1921
int first = input[FIRST_POSITION];
2022
input.RemoveAt(FIRST_POSITION);
2123
input.Add(first);
@@ -28,6 +30,8 @@ public static List<int> rotLeftOne(List<int> input)
2830
*/
2931
public static List<int> rotLeft(List<int> input, int d)
3032
{
33+
ArgumentNullException.ThrowIfNull(input);
34+
3135
// Clone the list
3236
List<int> output = input.GetRange(FIRST_POSITION, input.Count);
3337

src/algorithm_exercises_csharp/hackerrank/interview_preparation_kit/arrays/CrushBruteForce.cs

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,8 @@ protected CrushBruteForce() { }
1414

1515
public static long arrayManipulation(int n, List<List<int>> queries)
1616
{
17+
ArgumentNullException.ThrowIfNull(queries);
18+
1719
// why adding 1?
1820
// first slot to adjust 1-based index and
1921
int[] result = new int[n + 1];

src/algorithm_exercises_csharp/hackerrank/interview_preparation_kit/arrays/CrushOptimized.cs

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,8 @@ private CrushOptimized() { }
1515
*/
1616
public static long arrayManipulation(int n, List<List<int>> queries)
1717
{
18+
ArgumentNullException.ThrowIfNull(queries);
19+
1820
// why adding 2?
1921
// first slot to adjust 1-based index and
2022
// last slot for storing accumSum result

src/algorithm_exercises_csharp/hackerrank/interview_preparation_kit/arrays/NewYearChaos.cs

Lines changed: 4 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -2,20 +2,17 @@
22

33
namespace algorithm_exercises_csharp.hackerrank.interview_preparation_kit.arrays;
44

5-
using System.Diagnostics.CodeAnalysis;
6-
7-
public class NewYearChaos
5+
public static class NewYearChaos
86
{
9-
[ExcludeFromCodeCoverage]
10-
protected NewYearChaos() { }
11-
12-
public const String TOO_CHAOTIC_ERROR = "Too chaotic";
7+
public const string TOO_CHAOTIC_ERROR = "Too chaotic";
138

149
/**
1510
* minimumBribesCalculate.
1611
*/
1712
public static int minimumBribesCalculate(List<int> q)
1813
{
14+
ArgumentNullException.ThrowIfNull(q);
15+
1916
int bribes = 0;
2017
int i = 0;
2118

src/algorithm_exercises_csharp/hackerrank/interview_preparation_kit/arrays/TwoDArray.cs

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -31,6 +31,8 @@ private static List<int> getHourGlass(List<List<int>> arr, int positionX, int po
3131

3232
public static int hourglassSum(List<List<int>> arr)
3333
{
34+
ArgumentNullException.ThrowIfNull(arr);
35+
3436
int matrixSize = arr.Count;
3537

3638
int matrixStartIndex = 1;

src/algorithm_exercises_csharp/hackerrank/interview_preparation_kit/dictionaries_and_hashmaps/CountTriplets.cs

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,6 @@
44

55
namespace algorithm_exercises_csharp.hackerrank.interview_preparation_kit.dictionaries_and_hashmaps;
66

7-
using System.Diagnostics.CodeAnalysis;
87
using System.Collections.Generic;
98

109
public class CountTriplets
@@ -14,6 +13,8 @@ protected CountTriplets() { }
1413

1514
public static long countTriplets(List<long> arr, long r)
1615
{
16+
ArgumentNullException.ThrowIfNull(arr);
17+
1718
Dictionary<long, long> aCounter = [];
1819
Dictionary<long, long> bCounter = [];
1920
long triplets = 0L;

src/algorithm_exercises_csharp/hackerrank/interview_preparation_kit/dictionaries_and_hashmaps/CountTripletsBruteForce.cs

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,8 @@ protected CountTripletsBruteForce() { }
1212

1313
public static long countTriplets(List<long> arr, long r)
1414
{
15+
ArgumentNullException.ThrowIfNull(arr);
16+
1517
long size = arr.Count;
1618
long counter = 0L;
1719

src/algorithm_exercises_csharp/hackerrank/interview_preparation_kit/dictionaries_and_hashmaps/FrequencyQueries.cs

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -116,6 +116,8 @@ void select(long value)
116116
*/
117117
public static List<int> freqQuery(List<List<int>> queries)
118118
{
119+
ArgumentNullException.ThrowIfNull(queries);
120+
119121
FrequencyQueries fq = new();
120122

121123
foreach (List<int> query in queries)

src/algorithm_exercises_csharp/hackerrank/interview_preparation_kit/dictionaries_and_hashmaps/RansomNote.cs

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,9 @@ public InvalidValueException(string msg)
2424

2525
public static bool checkMagazineCompute(List<string> magazine, List<string> note)
2626
{
27+
ArgumentNullException.ThrowIfNull(magazine);
28+
ArgumentNullException.ThrowIfNull(note);
29+
2730
Dictionary<string, int> dictionary = [];
2831

2932
foreach (string word in magazine)

src/algorithm_exercises_csharp/hackerrank/interview_preparation_kit/dictionaries_and_hashmaps/SherlockAndAnagrams.cs

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,8 @@ public static BigInteger factorial(int number)
2626

2727
public static int sherlockAndAnagrams(string s)
2828
{
29+
ArgumentException.ThrowIfNullOrEmpty(s);
30+
2931
Dictionary<string, List<string>> candidates = [];
3032

3133
int size = s.Length;

0 commit comments

Comments
 (0)