The random sudoku board is generated by using functions from my previous project called 'Sudoku-C' :)
Passing your own board is also possible, just change
int grid[SIZE][SIZE];
into your own 9x9 sudoku board filled with 0's as the gaps.
gcc main.c sudoku.c -o sa_solvedsudoku
run either the .exe app in the folder or by cmd
https://www.youtube.com/watch?v=eBmU1ONJ-os (the best one that helped me really understand the concept as a whole) https://www.youtube.com/watch?v=FyyVbuLZav8 (explains how to approach the algorytm with sudoku)
Simulated Annealing Explained Baeldung
Solving Sudoku with Simulated Annealing