diff --git a/knapsack.py b/knapsack.py new file mode 100644 index 0000000..676b936 --- /dev/null +++ b/knapsack.py @@ -0,0 +1,17 @@ +def knapSack(W, wt, val, n): + # initial conditions + if n == 0 or W == 0 : + return 0 + # If weight is higher than capacity then it is not included + if (wt[n-1] > W): + return knapSack(W, wt, val, n-1) + # return either nth item being included or not + else: + return max(val[n-1] + knapSack(W-wt[n-1], wt, val, n-1), + knapSack(W, wt, val, n-1)) +# To test above function +val = [60, 100, 120] +wt = [10, 20, 30] +W = 50 +n = len(val) +print (knapSack(W, wt, val, n))