leetcode-300-Longest Increasing Subsequence 动态规划

来源:互联网 发布:mac手机铃声 编辑:程序博客网 时间:2024/05/16 15:31

问题

题目:[leetcode-300]

思路

参照此前另一篇文章[最长递增子序列(LIS)-动态规划]

代码

int lengthOfLIS(int* nums, int numsSize) {    if( NULL == nums || numsSize <= 0 )        return 0;    int* dp = (int*)malloc( sizeof(int) * numsSize );    if(!dp)        return -1;    dp[0] = 1;    int max = 1;    for( int i = 1; i < numsSize; ++i )    {        dp[i] = 1;        for( int j = 0; j < i; ++j )        {            if( nums[j] < nums[i] && dp[j] + 1 > dp[i] )                dp[i] = dp[j] + 1;        }        if( dp[i] > max )            max = dp[i];    }    free(dp);        return max;}
0 0
原创粉丝点击