15 puzzle problem

May someone provide me with the resources to learn 15 puzzle problem along with its implementation part?