From 92a302deec4d4ccbd28e73e3b2894ff6b2702394 Mon Sep 17 00:00:00 2001 From: reyadussalahin Date: Mon, 24 May 2021 10:47:35 +0600 Subject: [PATCH] added cumulative sum for list sometimes we need to calculate cumulative sum for a list as follows: ``` def get_cumulative_sum(num_list: List[int]) -> List[int]: cumulative_sum = [0] * len(num_list) for i, v in enumerate(num_list): cumulative_sum[i] = v + (0 if i == 0 else cumulative_sum[i-1]) return cumulative_sum ``` but it can be easily done with `itertools.accumulate` as follows: ``` cumulative_sum = list(itertools.accumulate()) ``` --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index 19637c4..ae323e4 100644 --- a/README.md +++ b/README.md @@ -47,6 +47,7 @@ List ```python sum_of_elements = sum() elementwise_sum = [sum(pair) for pair in zip(list_a, list_b)] +cumulative_sum = list(itertools.accumulate()) sorted_by_second = sorted(, key=lambda el: el[1]) sorted_by_both = sorted(, key=lambda el: (el[1], el[0])) flatter_list = list(itertools.chain.from_iterable())