This is the old and famous knapsack problem : Knapsack Problem
Here I have Knapsack problem with one constraint.
I have Knapsack with size W = 100000000 and N = 100 items I wrote the dynamic solution for it the Complexity of my algorithm is O(100000000*100) and this is too big in both time and space but there is one condition here that either W ≤ 50000 or max 1≤ i ≤ n Vi ≤ 500. so if my Knapsack size is more than 50000 my maximum value of items is limited.
So now I wonder how can I reduce the time Complexity of my algorithm with this condition I thought Knapsack problem depends on the size of knapsack and the number of items so how the value of items can change the change my algorithm?
Knapsack with one additional constraint
1k views Asked by Daniel.V At
1
There are 1 answers
Related Questions in ALGORITHM
- MCNP 6 - Doubts about cells
- Given partially sorted array of type x<y => first apperance of x comes before first of y, sort in average O(n)
- What is the algorithm behind math.gcd and why it is faster Euclidean algorithm?
- Purpose of last 2 while loops in the merge algorithm of merge sort sorting technique
- Dots and Boxes with apha-beta pruning
- What is the average and worst-case time complexity of my string searching algorithm?
- Building a School Schedule Generator
- TC problem 5-2:how to calculate the probability of the indicator random variable?
- LCA of a binary tree implemented in Python
- Identify the checksum algorithm
- Algorithm for finding a subset of nodes in a weighted connected graph such that the distance between any pair nodes are under a postive number?
- Creating an efficent and time-saving algorithm to find difference between greater than and lesser than combination
- Algorithm to find neighbours of point by distance with no repeats
- Asking code suggestions about data structure and algorithm
- Heap sort with multithreading
Related Questions in DYNAMIC-PROGRAMMING
- Leetcode 1255-recursion and backtracking
- Can dynamic programming help solve this problem?
- How to dynamically switch between two images onclick in Vue.js
- What boilerplate is the best for dynamic form building with reactjs typescript and .Net core microservices
- Is there a optimal solution for Jump Game Problem using C programming
- How to using Dapper to extract data from column dynamically altered table
- I'm facing a problem regarding hexagonal tiles
- 2 City Scheduling DP clarification
- How to find min cost for element selection from a sequence of adjacent pairs
- Dynamically Create Nested Structure
- Dynamic Dependency Injection at The Run Time
- Number of hits in fibonacci using lru_cache
- jit - "Failed in nopython mode pipeline" error, despite not using nopython in numba
- Issue solving DFS Flood Fill problem while iterating through branching options
- Discrepancy in Recursive and Memoized Knapsack Solution
Related Questions in KNAPSACK-PROBLEM
- I am currently working on Knapsack and using class but i having a trouble that the variables can not be access(Variables in knapsack class)
- find number of unique durations given a list of durations and an upper bound
- 3-d bin packing with additional constraints and subsets of items
- Discrepancy in Recursive and Memoized Knapsack Solution
- matrix not updating in knapsack algorithm
- Knapsack Problem: Find Top-K Lower Profit Solutions
- Vanilla BnB on 0/1 knapsack using Python
- Can we find initial Peg of tower of hanoi problem from middle states
- Quite Hard DLX Optimizing JavaFX 3D Grid Manipulation for Performance
- The code for 0/1 Knapsack Problem is not working
- Knapsack Problem: bags have variable weights
- How to solve 0/1 knapsack problem using memoization DP by incrementally adding the capacity instead of substracting
- Getting the maximum number of groups when grouping students with specific conditions
- Greedy Algorithm returning incorrect answer for Job Sequencing Problem
- Spell casting - How to optimize damage per second : Variation of 0-1 Knapsack
Popular Questions
- How do I undo the most recent local commits in Git?
- How can I remove a specific item from an array in JavaScript?
- How do I delete a Git branch locally and remotely?
- Find all files containing a specific text (string) on Linux?
- How do I revert a Git repository to a previous commit?
- How do I create an HTML button that acts like a link?
- How do I check out a remote Git branch?
- How do I force "git pull" to overwrite local files?
- How do I list all files of a directory?
- How to check whether a string contains a substring in JavaScript?
- How do I redirect to another webpage?
- How can I iterate over rows in a Pandas DataFrame?
- How do I convert a String to an int in Java?
- Does Python have a string 'contains' substring method?
- How do I check if a string contains a specific word?
Trending Questions
- UIImageView Frame Doesn't Reflect Constraints
- Is it possible to use adb commands to click on a view by finding its ID?
- How to create a new web character symbol recognizable by html/javascript?
- Why isn't my CSS3 animation smooth in Google Chrome (but very smooth on other browsers)?
- Heap Gives Page Fault
- Connect ffmpeg to Visual Studio 2008
- Both Object- and ValueAnimator jumps when Duration is set above API LvL 24
- How to avoid default initialization of objects in std::vector?
- second argument of the command line arguments in a format other than char** argv or char* argv[]
- How to improve efficiency of algorithm which generates next lexicographic permutation?
- Navigating to the another actvity app getting crash in android
- How to read the particular message format in android and store in sqlite database?
- Resetting inventory status after order is cancelled
- Efficiently compute powers of X in SSE/AVX
- Insert into an external database using ajax and php : POST 500 (Internal Server Error)
Instead of creating a table of size
W*n, where each entryD[x][i]indicates the best value (highest) you can get with at mostxweight using the firstiitems, use the table where nowD[x][i]is the minimal weight needed to get to value ofx, using the firstielements:When you are done, find
max{ x | D(x,n) <= W) }- this is the highest value you can get, using at mostWweight, and is done by a linear scan of the last line of the DP matrix.Checking which variation you need is done by a single scan of the data.