From 340a5c28134b0cecaa60e4f74deb4b4c71ba6d98 Mon Sep 17 00:00:00 2001 From: jnv27 <44162351+jnv27@users.noreply.github.com> Date: Fri, 11 Oct 2019 14:24:04 +0530 Subject: [PATCH] Create knapsack.java knapsck problem --- knapsack.java | 31 +++++++++++++++++++++++++++++++ 1 file changed, 31 insertions(+) create mode 100644 knapsack.java diff --git a/knapsack.java b/knapsack.java new file mode 100644 index 0000000..fe0bde7 --- /dev/null +++ b/knapsack.java @@ -0,0 +1,31 @@ +class Knapsack +{ + + static int max(int a, int b) + { + return (a > b)? a : b; + } + + static int knapSack(int W, int wt[], int val[], int n) + { + if (n == 0 || W == 0) + return 0; + + + if (wt[n-1] > W) + return knapSack(W, wt, val, n-1); + + else return max( val[n-1] + knapSack(W-wt[n-1], wt, val, n-1), + knapSack(W, wt, val, n-1) + ); + } + + public static void main(String args[]) + { + int val[] = new int[]{60, 100, 120}; + int wt[] = new int[]{10, 20, 30}; + int W = 50; + int n = val.length; + System.out.println(knapSack(W, wt, val, n)); + } +}