Skip to content

Commit

Permalink
Merge pull request TheAlgorithms#49 from yvonneFtMore/master
Browse files Browse the repository at this point in the history
add sum of the longest sub array
  • Loading branch information
dynamitechetan authored Nov 29, 2016
2 parents e76dc66 + ac5d235 commit 95ee8b4
Showing 1 changed file with 32 additions and 0 deletions.
32 changes: 32 additions & 0 deletions dynamic_programming/longest_sub_array.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
'''
Auther : Yvonne
This is a pure Python implementation of Dynamic Programming solution to the edit distance problem.
The problem is :
Given an array, to find the longest and continuous sub array and get the max sum of the sub array in the given array.
'''


class SubArray:

def __init__(self, arr):
# we need a list not a string, so do something to change the type
self.array = arr.split(',')
print("the input array is:", self.array)

def solve_sub_array(self):
rear = [int(self.array[0])]*len(self.array)
sum_value = [int(self.array[0])]*len(self.array)
for i in range(1, len(self.array)):
sum_value[i] = max(int(self.array[i]) + sum_value[i-1], int(self.array[i]))
rear[i] = max(sum_value[i], rear[i-1])
return rear[len(self.array)-1]


if __name__ == '__main__':
whole_array = input("please input some numbers:")
array = SubArray(whole_array)
re = array.solve_sub_array()
print("the results is:", re)

0 comments on commit 95ee8b4

Please sign in to comment.