算法学习
简介
记录本人算法学习
kadane算法(处理最长连续子数列和)
本质是动态规划结合贪心算法,时间复杂度为o(n)。
递推表达式为:
1 | current_max = std::max(arr[i], current_max + arr[i]); |
1 | max_so_far = std::max(max_so_far, current_max); |
其中arr[i]是存储数据元素的数组,current_max是局部最大值,max_so_far是全局最大值。
通过这一算法可以极大地减小时间复杂度。
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来源 ようこそ、わが楽園へ!!




