leecode第五十三题(最大子序和)

class Solution {
public:
int maxSubArray(vector<int>& nums) {
int len=nums.size();
if(len==)//特殊情况
return nums[];
int max_num=INT_MIN,sum_num=;//注意这里max_num初始化为INT_MIN,以防数组全为负的情况
for(int i=;i<len;i++)
{
sum_num+=nums[i];
if(nums[i]>sum_num)//如果当前求和值还不如我大,要他们何用
sum_num=nums[i];
if(sum_num>max_num)//一路比较最高值
max_num=sum_num;
}
return max_num;//返回即可
}
};
分析:
这个题在剑指offer上见过,所以思路还在,写的也算快,唯一有错误的是max_num初始化,我没有考虑全负的情况(也是自己写的有点快,自我感觉太熟了还真不好)。
leecode第五十三题(最大子序和)的更多相关文章
- 【leetcode 简单】第十三题 最大子序和
给定一个整数数组 nums ,找到一个具有最大和的连续子数组(子数组最少包含一个元素),返回其最大和. 示例: 输入: [-2,1,-3,4,-1,2,1,-5,4], 输出: 6 解释: 连续子数组 ...
- leecode第四十三题(字符串相乘)
class Solution { public: string multiply(string num1, string num2) { ";//特殊情况 ] == ] == ') retu ...
- leecode第三十三题(搜索旋转排序数组)
class Solution { public: int search(vector<int>& nums, int target) { int len=nums.size(); ...
- LeetCode 53题 最大子序和 -- JavaScript
解题思路分析: 该题是在一个整数数组中找到一个和最大的连续子数组,并返回和值.那么如何找到一个和最大的连续子数组呢?我们知道,这肯定需要遍历数组才行:好,那我们就开始遍历数组.首先,我们初始化最大和 ...
- 《剑指offer》第五十三题(数组中数值和下标相等的元素)
// 面试题53(三):数组中数值和下标相等的元素 // 题目:假设一个单调递增的数组里的每个元素都是整数并且是唯一的.请编程实 // 现一个函数找出数组中任意一个数值等于其下标的元素.例如,在数组{ ...
- 《剑指offer》第五十三题(0到n-1中缺失的数字)
// 面试题53(二):0到n-1中缺失的数字 // 题目:一个长度为n-1的递增排序数组中的所有数字都是唯一的,并且每个数字 // 都在范围0到n-1之内.在范围0到n-1的n个数字中有且只有一个数 ...
- 《剑指offer》第五十三题(数字在排序数组中出现的次数)
// 面试题53(一):数字在排序数组中出现的次数 // 题目:统计一个数字在排序数组中出现的次数.例如输入排序数组{1, 2, 3, 3, // 3, 3, 4, 5}和数字3,由于3在这个数组中出 ...
- 【leetcode 简单】 第五十三题 删除重复的电子邮箱
编写一个 SQL 查询,来删除 Person 表中所有重复的电子邮箱,重复的邮箱里只保留 Id 最小 的那个. +----+------------------+ | Id | Email | +-- ...
- Leecode刷题之旅-C语言/python-53.最大子序和
/* * @lc app=leetcode.cn id=53 lang=c * * [53] 最大子序和 * * https://leetcode-cn.com/problems/maximum-su ...
随机推荐
- LSTM算法原理理解
神经网络 模拟人类大脑神经网络结构,每个神经元和其他的神经元相互连接,当它兴奋的时候会向相连的神经元发送化学物质,从而改变神经元的电位,当神经元的电位超过阈值,它会被激活,向其他神经元发送化学物质.其 ...
- MyBatis批量更新
逐条更新 这种方式显然是最简单,也最不容易出错的,即便出错也只是影响到当条出错的数据,而且可以对每条数据都比较可控. 代码 updateBatch(List<MyData> datas){ ...
- Ubuntu mysql数据库导入sql文件
在阿里云Ubuntu系统导入sql数据库文件 首先linux 下查看mysql相关目录 root@ubuntu14:~# whereis mysql mysql: /usr/bin/mysql--- ...
- Java并发编程73道面试题及答案 —— 面试稳了
今天主要整理一下 Java 并发编程在面试中的常见问题,希望对需要的读者有用. 1.在java中守护线程和本地线程区别? java中的线程分为两种:守护线程(Daemon)和用户线程(User). 任 ...
- mint-ui之Loadmore使用
<template> <div class="page-loadmore"> <div class="page-loadmore-wrapp ...
- Bugku-CTF之web3-flag就在这里快来找找吧
Day6 web3 30 flag就在这里快来找找吧http://123.206.87.240:8002/web3/ 本题要点:NCR 转义序列(Unicode) 在Windows中经常需要用到多 ...
- Android灯光系统框架分析【转】
本文转载自: 首先别人的APP要能直接访问到你写的硬件或者不经过任何修改的APP能直接使用你的驱动,就需要使用系统自带的JNI,所以我们需要写出符合系统自带JNI文件的HAL文件和驱动程序,下面具体分 ...
- bzoj 3437 小p的农场
bzoj 3437 小p的农场 思路 \(f[i]=min(f[j]+\sum\limits_{k=j+1}^{i}{b[k]*(i-k)}+a[i])\) \(f[i]=min(f[j]+\sum\ ...
- 102. Binary Tree Level Order Traversal 广度优先遍历
Given a binary tree, return the level order traversal of its nodes' values. (ie, from left to right, ...
- 好用的js模板
组织form下的 json对象 $.fn.serializeObject = function() { var o = {"unique_id":new Date().getTim ...