最大子序列和的接口函数(2)

简介: 最大子序列和的接口函数(2)
int MaxSubsequenceSum(const int A[],int N)
{
  int thisSum,MaxSum,i,j,k;
  MaxSum=0;
  for(i=1;i<N;i++)
  {
  for(j=i;j<N;j++)
  {
    thisSum=0;
    for(k=i;k<j;j++)
    {
    thisSum+=A[K];    
    }
    if(thisSum>MaxSum)
    MaxSum=thisSum;
  } 
  return MaxSum
  }
}


举个例子,在test.c中:

#include <stdio.h>
#include <stdlib.h>
int MaxSubsequenceSum(const int A[],int N)
{
  int thisSum,MaxSum,i,j,k;
  MaxSum=0;
  for(i=0;i<N;i++)
  {
  printf("i:%d ....\n",i);  
  for(j=i;j<N;j++)
  {
    printf("j:%d ....\n",j);  
    thisSum=0;
    for(k=i;k<=j;k++)
    {
    printf("k:%d ....\n",k);  
    thisSum+=A[k];    
    }
    if(thisSum>MaxSum)
    MaxSum=thisSum;
  }   
  }
  return MaxSum;
}
int main()
{
  int number[]={1,-1,3,4};
  int maxsum=0;
  printf("start ....\n"); 
  maxsum=MaxSubsequenceSum(number,4);
  printf("maxsum:%d\n",maxsum); 
  exit(0);
}


linux下编译运行

gcc -o sub maxsub.c
./sub


得出结果

start ....
i:0 ....
j:0 ....
k:0 ....
j:1 ....
k:0 ....
k:1 ....
j:2 ....
k:0 ....
k:1 ....
k:2 ....
j:3 ....
k:0 ....
k:1 ....
k:2 ....
k:3 ....
i:1 ....
j:1 ....
k:1 ....
j:2 ....
k:1 ....
k:2 ....
j:3 ....
k:1 ....
k:2 ....
k:3 ....
i:2 ....
j:2 ....
k:2 ....
j:3 ....
k:2 ....
k:3 ....
i:3 ....
j:3 ....
k:3 ....
maxsum:7


第一个for循环为N,第二个for循环大小为N-i;第三个for循环大小j-i+1;总数为O(1*N*N*N)=O()

目录
相关文章
|
8月前
|
存储
【每日一题Day254】LC445两数相加Ⅱ | 链表反转 栈
【每日一题Day254】LC445两数相加Ⅱ | 链表反转 栈
53 0
|
C语言
C语言之水仙花数的求解与二维数组结合,使用函数调用
C语言之水仙花数的求解与二维数组结合,使用函数调用
|
8月前
|
编译器 C语言
库函数qsort的使用及利用冒泡排序模拟实现qsort
库函数qsort的使用及利用冒泡排序模拟实现qsort
|
7月前
实现offsetof宏以及交换一个整数二进制奇偶位的宏
实现offsetof宏以及交换一个整数二进制奇偶位的宏
31 0
实现offsetof宏以及交换一个整数二进制奇偶位的宏
|
8月前
|
C语言
C语言进阶21收尾(编程练习)(atoi,strncpy,strncat,offsetof模拟实现+找单身狗+宏交换二进制奇偶位)(上)
C语言进阶21收尾(编程练习)(atoi,strncpy,strncat,offsetof模拟实现+找单身狗+宏交换二进制奇偶位)
119 0
|
8月前
|
C语言
C语言进阶21收尾(编程练习)(atoi,strncpy,strncat,offsetof模拟实现+找单身狗+宏交换二进制奇偶位)(下)
C语言进阶21收尾(编程练习)(atoi,strncpy,strncat,offsetof模拟实现+找单身狗+宏交换二进制奇偶位)
46 0
|
8月前
PTA-第4章-12 求满足条件的斐波那契数
摘要:该问题要求编写程序找出大于输入正整数n的最小斐波那契数。斐波那契数列是前两项之和构成后续项的数列,起始为1、1。给定输入样例n=10,输出为13。代码通过while循环计算,直至找到第一个大于n的斐波那契数,并将其输出。
78 5
|
8月前
|
机器学习/深度学习
PTA-阶乘函数实现
阶乘函数实现
83 0
|
C语言
C语言的offsetof宏模拟和用宏实现交换奇偶位
C语言的offsetof宏模拟和用宏实现交换奇偶位