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

Commit 10faba1

Browse files
committed
Added move zeros test
1 parent 502d17c commit 10faba1

File tree

1 file changed

+35
-1
lines changed
  • CodingInterview/CodingInterview

1 file changed

+35
-1
lines changed

‎CodingInterview/CodingInterview/Tests.cs‎

Lines changed: 35 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -39,10 +39,33 @@ int[] LeaveTwoDuplicates(int[] arrayOfNumbers)
3939

4040
int[] RemoveElement(int[] arrayOfNumbers, int elementToRemove)
4141
{
42-
return arrayOfNumbers.Where(element => element != elementToRemove)
42+
return arrayOfNumbers
43+
.Where(element => element != elementToRemove)
4344
.ToArray();
4445
}
4546

47+
int[] MoveZeros(int[] arrayOfNumbers)
48+
{
49+
var zeroCount = 0;
50+
var listOfElements = new List<int>();
51+
for(int index = 0; index < arrayOfNumbers.Length; index++)
52+
{
53+
var actualElement = arrayOfNumbers[index];
54+
if (actualElement == 0)
55+
{
56+
zeroCount++;
57+
}
58+
else
59+
{
60+
listOfElements.Add(actualElement);
61+
}
62+
}
63+
listOfElements
64+
.AddRange(Enumerable.Range(1, zeroCount)
65+
.Select(x => 0));
66+
return listOfElements.ToArray();
67+
}
68+
4669
[Test]
4770
public void RemoveDuplicatesFromSortedArray_1()
4871
{
@@ -76,5 +99,16 @@ public void RemoveElement_3()
7699

77100
Assert.AreEqual(expectedArrayWithElements, arrayWithRemoveElement);
78101
}
102+
103+
[Test]
104+
public void MoveZeros_4()
105+
{
106+
var arrayWithZeros = new int[] { 1, 0, 5, 0, 0, 3};
107+
var expectedArrayWithZerosInTheEnd = new int[] { 1, 5, 3, 0, 0, 0 };
108+
109+
var arrayWithRemoveElement = MoveZeros(arrayWithZeros);
110+
111+
Assert.AreEqual(expectedArrayWithZerosInTheEnd, arrayWithRemoveElement);
112+
}
79113
}
80114
}

0 commit comments

Comments
(0)

AltStyle によって変換されたページ (->オリジナル) /