自学内容网 自学内容网

【力扣每日一题】

【力扣第448题】找到所有数组中消失是数字

思路:参考答案

1、将遍历值对应的下标值变为负数,其中如果遍历值对应的下标值本就是负数,则不作改变

2、遍历返回大于0的数下标

代码:
/**
 * Note: The returned array must be malloced, assume caller calls free().
 */
int* findDisappearedNumbers(int* nums, int numsSize, int* returnSize){
    int *ans=malloc(sizeof(int)*numsSize);
    *returnSize = 0;
    int temp;
    for(int i = 0; i < numsSize; i++)
    {
        if(nums[i] < 0)
        {
            temp = nums[i]*(-1) - 1;
        }
        else
        {
            temp = nums[i]-1;
        }
​
        if(nums[temp]>0)
        {
            nums[temp] *= (-1);
        }
        
​
    }
    for(int i = 0;i < numsSize;i++)
    {
        if(nums[i] > 0)
        {
            ans[(*returnSize)++] = i+1;
​
        }
    }
    return ans;
}

【455】分发饼干

思路:

1、先排序,定义一个计数变量temp

2、两重for循环,判断g[i]是否小于等于s[j]

3、若g[i]小于等于s[j],则temp加一,s数组开始遍历值变为j+1(防止重复判断多加);

代码:
int cmp(const void *x,const void *y)
{
    return *(int*)x-*(int*)y;
}
int findContentChildren(int* g, int gSize, int* s, int sSize) {
    int temp=0;
    int m=0;
    qsort(g,gSize,sizeof(int),cmp);
    qsort(s,sSize,sizeof(int),cmp);
    for(int i = 0;i<gSize;i++)
    {
        for(int j = m;j<sSize;j++)
        {
            if(g[i] <= s[j])
            {
                temp++;
                m = j+1;
                break;
            }
            
        }
    }
   
    return temp;
    //return 1;
    
}

【485】最大连续1的个数

思路:

1、定义计数变量temp和存储temp最大数的变量n

2、遍历判断,为1 temp++;不为1,temp 置0

3、返回n

代码:
int cmp(const void *x,const void *y)
{
    return *(int*)x-*(int*)y;
}
int findContentChildren(int* g, int gSize, int* s, int sSize) {
    int temp=0;
    int m=0;
    qsort(g,gSize,sizeof(int),cmp);
    qsort(s,sSize,sizeof(int),cmp);
    for(int i = 0;i<gSize;i++)
    {
        for(int j = m;j<sSize;j++)
        {
            if(g[i] <= s[j])
            {
                temp++;
                m = j+1;
                break;
            }
            
        }
    }
   
    return temp;
    //return 1;
    
}


原文地址:https://blog.csdn.net/m0_65146517/article/details/140621095

免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!