0-1 Knapsack Geeks for Geeks Solution
BY RECURSION: Geeks For Geeks******************************************************************* class Solve{ public int knapsack(int w, int[] arr, int[] val, int n){ if(n==0 || w==0){ return 0; } else{ if(arr[n-1]>w){ return knapsack(w,arr,val,n-1); } else{ return Integer.max(knapsack(w,arr,val,n-1),val[n-1]+knapsack(w-arr[n-1],arr,val,n-1)); } } } } class Solution { //Function to return max value that can be put in the knapsack of capacity W. static int knapSack(int w, int wt[], int val[], int n) { Solve obj1=new Solve(); int c=obj1.knapsack(w,wt,val,n); return c; } } It will display Time Limit Exceeded Error. ----------------------------------------------------------------------------------------------------------------------------- BY MEMOIZATION Geeks for Geeks ************************************