剑指offer算法题:连续子数组的最大和FindGreatestSumOfSubArray

HZ偶尔会拿些专业问题来忽悠那些非计算机专业的同学。今天测试组开完会后,他又发话了:在古老的一维模式识别中,常常需要计算连续子向量的最大和,当向量全为正数的时候,问题很好解决。但是,如果向量中包含负数,是否应该包含某个负数,并期望旁边的正数会弥补它呢?例如:{6,-3,-2,7,-15,1,2,2},连续子向量的最大和为8(从第0个开始,到第3个为止)。给一个数组,返回它的最大连续子序列的和,你会不会被他忽悠住?(子向量的长度至少是1)

public class Solution {
    public int FindGreatestSumOfSubArray(int[] array) {
        int len;
        if(array == null || (len=array.length) == 0)
            return 0;
        int max_sum = Integer.MIN_VALUE;
        int cur_sum = 0;
        for(int i = 0;i < len;i++) {
            cur_sum += array[i];
            max_sum = Math.max(max_sum,cur_sum);
            //当cur_sum小于0时重新计算子序列和
            cur_sum = cur_sum <= 0 ? 0 : cur_sum;
        }
        return max_sum;
    }
}
Windows 11 Pro 是Microsoft Windows操作系统的专业版本之一,它针对企业和高级用户设计,提供了更多的管理选项和功能。以下是安装Windows 11 Pro的一般步骤: 1. **检查系统要求**:确保你的电脑满足Windows 11的专业版硬件需求,如64位处理器、足够的RAM(建议8GB以上),以及至少1TB的硬盘空间(SSD更佳)。 2. **获取安装媒体**:你可以从Microsoft Store购买并下载Windows 11 Pro ISO镜像文件,或者从官方授权渠道获取安装密钥和ISO。 3. **创建安装媒介**:可以使用Media Creation Tool工具制作USB启动盘或者DVD光盘。 4. **重启电脑**:将安装媒介插入电脑并重启,进入BIOS设置更改启动顺序以便从安装媒介引导。 5. **开始安装**:当电脑启动后,选择语言和键盘布局,然后按照屏幕提示进行下一步操作,包括许可条款接受、自定义安装等。 6. **输入产品密钥**:如果你有许可证密钥,此时需要输入,如果没有则可以选择“在线购买”或“试用30天”。 7. **分区和格式化磁盘**:选择是否保留现有数据,然后分配新硬盘的空间给Windows 11。 8. **安装过程**:等待安装程序完成,这可能需要一段时间,期间可能会有一些设置让你调整,比如激活选项和更新设置。 9. **首次登录**:安装完成后,创建新的管理员账户并设置密码,然后就可以开始使用Windows 11 Pro了。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值