Depth First Branch and Bound algorithm to deal with the Knapsack problem