package com.algorithm.complex;
public class SubMax {
public static void main(String[] args){
int[] a= {1,-87,8,66,-78,600,2};
System.out.println(subMax(a,0,a.length-1));
}
public static int subMax(int[] array,int left,int right){
if(left == right){
return array[left];
}
int model = (left+right)/2;
int leftmax = subMax(array,left,model);
int rightmax = subMax(array,model+1,right);
int leftbodermax = array[model]; int tmp=array[model];
for(int i = model-1 ;i >=left; i --){
tmp += array[i];
if(tmp>leftbodermax){
leftbodermax = tmp;}
}
int rightbodermax = array[model+1]; tmp = array[model+1];
for(int i = model+2; i <= right; i++ ){
tmp +=array[i];
if(rightbodermax<tmp){
rightbodermax = tmp;
}
}
int sum = rightbodermax + leftbodermax;
if(sum >leftmax && sum >rightmax){
return sum;
}
else if(leftmax >sum && leftmax >rightmax){
return leftmax;
}
else{
return rightmax;
}
}
}
分享到:
相关推荐
在《一种O(n + nlog₂m)时间复杂度的排序算法》这篇论文中,作者提出了一种新颖的排序算法,该算法的时间复杂度为O(n + nlog₂m),其中m为原始输入数据序列中有序或逆序子序列的数量,范围为1到n²(1 ≤ m ≤ n²)...
本教程聚焦于使用C#与NLog进行日志管理,特别针对.NET Framework 4.0环境。NLog是一款强大的、可配置的日志记录库,适用于各种.NET应用程序。 首先,让我们深入了解NLog的基本概念。NLog提供了一个灵活的配置系统,...
Nlog封装帮助方法类,方便调用
标题 "DotNetCore-Nlog" 指涉的是在 .NET Core 应用程序中使用 NLog 进行日志记录的实践。NLog 是一个流行的、高度可配置的日志框架,它允许开发者将应用程序的日志输出到各种目标,如控制台、文件、数据库等。在 ...
本示例主要关注WPF(Windows Presentation Foundation)应用中的全局异常捕获,以及如何结合NLog日志框架进行配置。 首先,我们来看全局异常捕获。在WPF应用中,我们可以利用Dispatcher.UnhandledException事件来...
NLog是一款广泛使用的日志记录框架,而Autofac则是一种流行的依赖注入(DI)容器。当这两者结合时,可以实现更加灵活和高效的日志管理。本文将详细探讨“基于Autofac的Nlog扩展”,如何实现Nlog的自动注入,以及如何...
在本文中,我们将深入探讨如何在C# WinForm应用程序中使用NLog进行日志记录,这对于初学者来说是一个非常实用的技能。Visual Studio 2019是我们的开发环境,NLog作为强大的日志框架,将帮助我们实现灵活且可扩展的...
NLog是一个广泛使用的.NET日志框架,它提供了灵活的日志配置和多种日志目标,如文件、数据库、SMTP邮件等。本文将详细讲解如何在C#项目中添加和使用NLog的DLL及配置文件。 首先,我们需要理解“DLL”是什么。DLL...
NLog是.NET平台上一款强大的日志记录框架,它允许开发者将应用程序中的日志信息记录到各种目标,如文件、数据库、电子邮件等。本主题将深入探讨如何使用NLog进行日志记录、发送邮件以及写入数据库,以实现高效且灵活...
具体的时间复杂度为1.386nlog(n/k)+nk/4+3(n+1)/(k+1)+O(logn)。 当k取值为8左右时,算法性能最佳,这意味着在大多数实际应用场景中,对于长度小于等于8的子数组,使用插入排序比继续使用快速排序更为高效。此外,...
4. **模板与布局**:NLOG允许用户自定义日志信息的格式,包括日期、时间、级别、类名、线程ID、消息等内容,使日志更易读且便于分析。 5. **异步写入**:为了提高性能,NLOG支持异步写入日志,避免了日志处理对主线...
NLog的主要目标是帮助开发者记录日志,使其易于分析、维护和故障排查。 首先,让我们深入了解NLog的基本概念。NLog的核心组成部分包括配置、日志记录器(Logger)、日志目标(Target)和布局(Layout)。配置文件...
NLog是.NET平台上一款强大的日志记录框架,广泛应用于C#项目中,为开发者提供了灵活的日志记录功能。本文将详细介绍NLog的使用方法以及如何配置文件,帮助你更好地理解和应用这一工具。 首先,让我们了解NLog的基本...
8. 指数阶O(2^n):如暴力搜索,当n增大时,执行时间增长非常快。 在分析时间复杂度时,我们通常考虑最坏情况下的复杂度,以确保算法在任何输入下都能在可接受的时间内完成。例如,冒泡排序在最好情况下(已排序数组...
3. **布局和模板**:NLog允许自定义日志输出格式,通过布局和模板系统,可以调整日期时间、级别、消息等元素的显示方式。 4. **过滤器和规则**:通过配置规则,可以指定哪些日志应被记录到哪个目标,提供精细的控制...
NLog是.NET框架中一款广泛使用的日志记录库,它为开发者提供了强大的日志管理和输出功能。这个压缩包文件包含了NLog的最新版本,并且已经证实可以在Visual Studio 2010环境下正常使用,这对于仍在使用VS2010的开发者...
开源日志库NLog的详细配置实例 包括写入文件、DB、自定数据表、异步等配置
5. **日志布局(Layouts)**:NLog允许自定义日志条目的格式,包括日期、时间、日志级别、消息、异常堆栈跟踪等。这种灵活性使日志更容易阅读,也可以适应不同的日志分析工具。 6. **过滤器(Filters)**:通过设置...
NLog 的简单使用 \bin\Debug\Logs\yyyy-MM-dd.log 每日一个文件 ,文件最大为1000k 超过1000k 存档到\bin\Debug\Logs\archives\yyyy-MM-dd#编号.log
Nlog同时输出到文件、控制台、RichTextBox VS2010+.net4.0+NLog+NLog.Windows.Forms 博客地址: https://blog.csdn.net/lw112190/article/details/131915209