易截截图软件、单文件、免安装、纯绿色、仅160KB

三种算法求最大子段和问题——Java实现

给定由n个整数组成的序列(a1, a2, …, an),求该序列的子段和的最大值,当所有整数均为负整数时,其最大子段和为0。
LargestSubsegmentSum1.java                        //蛮力算法
import java.util.*;
public class LargestSubsegmentSum1
{
 public static void main(String[] args)
 {
  /**
   *从键盘输入所要求的序列的长度n
   */
  Scanner in=new Scanner(System.in);
  
  System.out.println("Please enter the length of segment you want to make(输入你要求的序列的长度):");
  int n=in.nextInt();
  /**
   *从键盘输入所要求的序列,存储在a[n]中
   */
  int[] a=new int[n];
  System.out.println("Now,please enter the elements of the segment you want(现在请依次输入这个序列包含的元素(整数)):");
  for(int i=0;i<n;i++)
  {
   a[i]=in.nextInt();
  }
  
        double startTime=System.currentTimeMillis();//starttime
        /**
   *求解最大子段和存在maxSum中
   */
  int maxSum=a[0];
  for(int i=0;i<n-1;i++)
  {
   int temp=a[i];
   for(int j=i+1;j<n;j++)
   {
    temp+=a[j];
    if(temp>maxSum)
     maxSum=temp;
   }
  }
  double endTime=System.currentTimeMillis();//endtime
  /**
   *打印输出求解结果和程序所用时间
   */
  System.out.println("The largest sub-segment sum is(最大子段和是):"+maxSum);
  System.out.println("Basic Statements take(基本语句用时) "+(endTime-startTime)+" milliseconds!");
 }
}
****************************


相关文档:

java入门

 Java学习从入门到精通 
一、 JDK (Java Development Kit) 
JDK是整个Java的核心,包括了Java运行环境(Java Runtime Envirnment),一堆Java工具和Java基础的类库(rt.jar)。不论什么Java应用服务器实质都是内置了某个版本的JDK。因此掌握JDK是学好Java的第一步。最主流的J ......

Java NIO API详解

 
Java NIO API详解
在JDK
1.4以前,Java的IO操作集中在java.io这个包中,是基于流的阻塞(blocking)API。对于大多数应用来说,这样的API使用很方
便,然而,一些对性能要求较高的应用,尤其是服务端应用,往往需要一个更为有效的方式来处理IO。从JDK 1.4起,NIO
API作为一个基于缓冲区,并能提供非阻塞(non-blo ......

Java泛型应该注意的细节

1、不可以用一个本地类型(如int   float)来替换泛型.比如List<Integer>不能用List<int>型式
2、运行时类型检查,不同类型的泛型类是等价的(Pair<String>与Pair<Employee>是属于同一个
类型 Pair),这一点要特别注意:即如果a instanceof
Pair<String>==true的话,并不代表a. ......

CoreJava 基本语法 [Java]


1.  一个java源文件只有一个public类且类名与文件名一致。注:一个可运行的java应用程序应有一个main方法,且格式固定,但不一定在public类中。
2. package语句只能有一个且放在程序的第一行。
3. 整数在内存中式按照其补码来存储的,正数的补码=原码,负数的补码=原码取反加1 ,char无符号位(0~65535)
4. 强制 ......

使用Java操作文本文件的方法详解(转)

   最初Java是不支持对文本文件的处理的,为了弥补这个缺憾而引入了Reader和Writer两个类,这两个类都是抽象类,Writer中write(char[] ch,int off,int length),flush()和close()方法为抽象方法,Reader中read(char[] ch,int off,int length)和close()方法是抽象方法。子类应该分别实现他们。
  当我们读写文 ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号