Sure! Below is the complete HTML code that includes the "Spiral Traversal on a Matrix" using three different methods, all implemented in Python. The CSS is referenced as `common.css`, and comments are included in the code for clarity. ```html
The goal is to traverse a matrix in a spiral order.
This method uses an iterative approach to traverse the matrix in spiral order.
def spiral_traversal(matrix): top, bottom = 0, len(matrix) - 1 left, right = 0, len(matrix[0]) - 1 while top <= bottom and left <= right: # Traverse from left to right for i in range(left, right + 1): print(matrix[top][i], end=" ") top += 1 # Traverse from top to bottom for i in range(top, bottom + 1): print(matrix[i][right], end=" ") right -= 1 if top <= bottom: # Traverse from right to left for i in range(right, left - 1, -1): print(matrix[bottom][i], end=" ") bottom -= 1 if left <= right: # Traverse from bottom to top for i in range(bottom, top - 1, -1): print(matrix[i][left], end=" ") left += 1 print() # New line after traversal # Example usage matrix = [ [1, 2, 3, 4], [5, 6, 7, 8], [9, 10, 11, 12], [13, 14, 15, 16] ] print("Spiral Traversal: ", end="") spiral_traversal(matrix)
Spiral Traversal: 1 2 3 4 8 12 16 15 14 13 9 5 6 7 11 10
This method uses recursion to achieve spiral traversal.
def spiral_util(matrix, top, bottom, left, right): if top > bottom or left > right: return # Traverse from left to right for i in range(left, right + 1): print(matrix[top][i], end=" ") top += 1 # Traverse from top to bottom for i in range(top, bottom + 1): print(matrix[i][right], end=" ") right -= 1 if top <= bottom: # Traverse from right to left for i in range(right, left - 1, -1): print(matrix[bottom][i], end=" ") bottom -= 1 if left <= right: # Traverse from bottom to top for i in range(bottom, top - 1, -1): print(matrix[i][left], end=" ") left += 1 # Recursive call for the next layer spiral_util(matrix, top, bottom, left, right) def spiral_traversal(matrix): spiral_util(matrix, 0, len(matrix) - 1, 0, len(matrix[0]) - 1) print() # New line after traversal # Example usage matrix = [ [1, 2, 3, 4], [5, 6, 7, 8], [9, 10, 11, 12], [13, 14, 15, 16] ] print("Spiral Traversal: ", end="") spiral_traversal(matrix)
Spiral Traversal: 1 2 3 4 8 12 16 15 14 13 9 5 6 7 11 10