How to do the kSum in O(1), i only can do it like public long ksum(int k) { long sum = 0; for(int i=0; i

Database System Concepts
7th Edition
ISBN:9780078022159
Author:Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Publisher:Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Chapter1: Introduction
Section: Chapter Questions
Problem 1PE
icon
Related questions
Question

How to do the kSum in O(1), i only can do it like

public long ksum(int k) {

long sum = 0;

for(int i=0; i<k && i<ds.size(); i++)

sum += ds.get(ds.size() - 1 - i);

return sum;

}

 

The hint is

Consider the data stream: 1 2 3 4 5
Store this in a arraylist: [1,2,3,4,5]
Now have a cumulative sums arraylist:
data: [1
sums = [1

data: [1, 2
sums = [1, 3

data: [1,2,3
sums: [1, 3, 6

data: [1, 2, 3, 4
sums: [1, 3, 6, 10

data: [1, 2, 3, 4, 5]
sums: [1, 3, 6, 10, 15]

Now if in part1, calculate ksum(2):
sums list: [1, 3, 6, 10, 15]
ksum(2) = 9
If you can correctly identify which values at which particular indices you subtract to get ksum(2) = 9 in this case, you have a O(1) solution for ksum, since with each addition and removal of an element from the raw data arraylist, you add and remove from the sums arraylist as well

but i do not get it. Please give a code for example

 

Expert Solution
steps

Step by step

Solved in 3 steps with 1 images

Blurred answer
Knowledge Booster
Randomized Select Algorithm
Learn more about
Need a deep-dive on the concept behind this application? Look no further. Learn more about this topic, computer-science and related others by exploring similar questions and additional content below.
Similar questions
Recommended textbooks for you
Database System Concepts
Database System Concepts
Computer Science
ISBN:
9780078022159
Author:
Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Publisher:
McGraw-Hill Education
Starting Out with Python (4th Edition)
Starting Out with Python (4th Edition)
Computer Science
ISBN:
9780134444321
Author:
Tony Gaddis
Publisher:
PEARSON
Digital Fundamentals (11th Edition)
Digital Fundamentals (11th Edition)
Computer Science
ISBN:
9780132737968
Author:
Thomas L. Floyd
Publisher:
PEARSON
C How to Program (8th Edition)
C How to Program (8th Edition)
Computer Science
ISBN:
9780133976892
Author:
Paul J. Deitel, Harvey Deitel
Publisher:
PEARSON
Database Systems: Design, Implementation, & Manag…
Database Systems: Design, Implementation, & Manag…
Computer Science
ISBN:
9781337627900
Author:
Carlos Coronel, Steven Morris
Publisher:
Cengage Learning
Programmable Logic Controllers
Programmable Logic Controllers
Computer Science
ISBN:
9780073373843
Author:
Frank D. Petruzella
Publisher:
McGraw-Hill Education