Description
Build a Sudoku SolverObjective:Create a program that solves a 9×9 Sudoku puzzle. The program should take an unsolved Sudoku board as input and produce the solved board as output.Requirements:Input:A 9×9 grid (2D array or list of lists) where empty cells are represented by 0.Output:The same grid with all the empty cells filled in according to Sudoku rules.Sudoku Rules:Each row must contain the digits 1-9 without repetition.Each column must contain the digits 1-9 without repetition.Each of the 9 sub-grids (3×3) must contain the digits 1-9 without repetition.Constraints:Implement the solution using a backtracking algorithm.The program should be efficient enough to solve any valid Sudoku puzzle in a reasonable amount of time.