Exemplo n.º 1
0
 def test_traverse_column_vector(self):
     matrix = [
         [1],
         [2],
         [3]]
     actual = [i for i in SpiralMatrix(matrix, clockwise=False, inward=False)]
     self.assertEqual([3, 2, 1], actual)
Exemplo n.º 2
0
 def test_traverse_odd_square(self):
     matrix = [
         [1, 2, 3],
         [4, 5, 6],
         [7, 8, 9]]
     actual = [i for i in SpiralMatrix(matrix, clockwise=False, inward=False)]
     self.assertEqual([5, 4, 7, 8, 9, 6, 3, 2, 1], actual)
Exemplo n.º 3
0
 def test_traverse_large_matrix(self):
     matrix = [[i * 1000 + j for j in range(0, 1000)]
               for i in range(0, 1000)]
     actual = [i for i in SpiralMatrix(matrix, clockwise=False, inward=False)]
     self.assertEqual([500499, 500500, 499500, 499499], actual[0:4])
     self.assertEqual([3, 2, 1, 0],
                      actual[-4:])
Exemplo n.º 4
0
 def test_traverse_wide_even_height_rectangle(self):
     matrix = [
         [1, 2, 3, 4],
         [5, 6, 7, 8]]
     actual = [
         i for i in SpiralMatrix(matrix, clockwise=False, inward=False)]
     self.assertEqual(
         [5, 6, 7, 8, 4, 3, 2, 1], actual)
 def test_traverse_wide_rectangle(self):
     matrix = [
         [1, 2, 3, 4],
         [5, 6, 7, 8],
         [9, 10, 11, 12]]
     actual = [i for i in SpiralMatrix(matrix, clockwise=False)]
     self.assertEqual(
         [1, 5, 9, 10, 11, 12, 8, 4, 3, 2, 6, 7], actual)
 def test_traverse_tall_rectangle(self):
     matrix = [
         [1, 2, 3],
         [4, 5, 6],
         [7, 8, 9],
         [10, 11, 12]]
     actual = [i for i in SpiralMatrix(matrix, clockwise=False)]
     self.assertEqual(
         [1, 4, 7, 10, 11, 12, 9, 6, 3, 2, 5, 8], actual)
Exemplo n.º 7
0
 def test_traverse_tall_even_width_rectangle(self):
     matrix = [
         [1, 2, 3, 4],
         [5, 6, 7, 8],
         [9, 10, 11, 12],
         [13, 14, 15, 16],
         [17, 18, 19, 20]]
     actual = [
         i for i in SpiralMatrix(matrix, clockwise=False, inward=False)]
     self.assertEqual(
         [10, 14, 15, 11, 7, 6, 5, 9, 13, 17, 18, 19, 20, 16, 12, 8, 4, 3, 2, 1],
         actual)
Exemplo n.º 8
0
 def test_traverse_tall_odd_width_rectangle(self):
     matrix = [[1, 2, 3], [4, 5, 6], [7, 8, 9], [10, 11, 12]]
     actual = [i for i in SpiralMatrix(matrix, inward=False)]
     self.assertEqual([8, 5, 2, 3, 6, 9, 12, 11, 10, 7, 4, 1], actual)
Exemplo n.º 9
0
 def test_traverse_even_square(self):
     matrix = [
         [1, 2],
         [3, 4]]
     actual = [i for i in SpiralMatrix(matrix, clockwise=False, inward=False)]
     self.assertEqual([3, 4, 2, 1], actual)
Exemplo n.º 10
0
 def test_traverse_tall_even_width_rectangle(self):
     matrix = [[1, 2], [3, 4], [5, 6], [7, 8]]
     actual = [i for i in SpiralMatrix(matrix, inward=False)]
     self.assertEqual([2, 4, 6, 8, 7, 5, 3, 1], actual)
Exemplo n.º 11
0
 def test_traverse_single_element(self):
     matrix = [[1]]
     actual = [i for i in SpiralMatrix(matrix, clockwise=False, inward=False)]
     self.assertEqual([1], actual)
Exemplo n.º 12
0
 def test_traverse_large_matrix(self):
     matrix = [[i * 1000 + j for j in range(0, 1000)]
               for i in range(0, 1000)]
     actual = [i for i in SpiralMatrix(matrix)]
     self.assertEqual([0, 1, 2, 3], actual[0:4])
     self.assertEqual([499499, 499500, 500500, 500499], actual[-4:])
Exemplo n.º 13
0
 def test_traverse_empty(self):
     matrix = []
     actual = [i for i in SpiralMatrix(matrix)]
     self.assertEqual([], actual)
Exemplo n.º 14
0
 def test_traverse_row_vector(self):
     matrix = [[1, 2, 3]]
     actual = [i for i in SpiralMatrix(matrix, clockwise=False)]
     self.assertEqual([1, 2, 3], actual)
Exemplo n.º 15
0
 def test_traverse_wide_odd_height_rectangle(self):
     matrix = [[1, 2, 3, 4], [5, 6, 7, 8], [9, 10, 11, 12]]
     actual = [i for i in SpiralMatrix(matrix, inward=False)]
     self.assertEqual([7, 6, 2, 3, 4, 8, 12, 11, 10, 9, 5, 1], actual)
Exemplo n.º 16
0
 def test_traverse_column_vector(self):
     matrix = [[1], [2], [3]]
     actual = [i for i in SpiralMatrix(matrix)]
     self.assertEqual([1, 2, 3], actual)
Exemplo n.º 17
0
 def test_traverse_single_element(self):
     matrix = [[1]]
     actual = [i for i in SpiralMatrix(matrix)]
     self.assertEqual([1], actual)
Exemplo n.º 18
0
 def test_traverse_empty(self):
     matrix = []
     actual = [i for i in SpiralMatrix(matrix, clockwise=False, inward=False)]
     self.assertEqual([], actual)
Exemplo n.º 19
0
 def test_traverse_tall_rectangle(self):
     matrix = [[1, 2, 3], [4, 5, 6], [7, 8, 9], [10, 11, 12]]
     actual = [i for i in SpiralMatrix(matrix)]
     self.assertEqual([1, 2, 3, 6, 9, 12, 11, 10, 7, 4, 5, 8], actual)
Exemplo n.º 20
0
 def test_traverse_even_square(self):
     matrix = [[1, 2], [3, 4]]
     actual = [i for i in SpiralMatrix(matrix)]
     self.assertEqual([1, 2, 4, 3], actual)
Exemplo n.º 21
0
 def test_traverse_empty_vector(self):
     matrix = [[]]
     actual = [i for i in SpiralMatrix(matrix, clockwise=False)]
     self.assertEqual([], actual)
Exemplo n.º 22
0
 def test_traverse_odd_square(self):
     matrix = [[1, 2, 3], [4, 5, 6], [7, 8, 9]]
     actual = [i for i in SpiralMatrix(matrix)]
     self.assertEqual([1, 2, 3, 6, 9, 8, 7, 4, 5], actual)
Exemplo n.º 23
0
 def test_traverse_row_vector(self):
     matrix = [[1, 2, 3]]
     actual = [i for i in SpiralMatrix(matrix, inward=False)]
     self.assertEqual([3, 2, 1], actual)