力扣238和169

一:238. 除自身以外数组的乘积

1.1题目

1.2思路

1.3代码

复制代码
//左右乘表
int* productExceptSelf(int* nums, int numsSize, int* returnSize) 
{
    int* answer = (int*)malloc(numsSize*sizeof(int));
    int i = 0;
    int left[numsSize],right[numsSize];
    left[0] = 1;
    for(i = 1;i<numsSize;i++)
    {
        left[i] = (left[i-1]) * (nums[i-1]);
    }
    right[numsSize-1] = 1;
    for(i = numsSize-2;i>=0;i--)
    {
        right[i] = (right[i+1]) * (nums[i+1]);
    }
    for(i =0;i<numsSize;i++)
    answer[i] = left[i]*right[i];
    *returnSize = numsSize;
    return answer;
    
}

二:169. 多数元素

2.1题目

2.2思路

思路一:

思路二:

2.3代码

复制代码
//摩尔投票法
//先假设数组中任意一个数就是众数,然后下一次i++时
//nums[i]=这个数,cont就++,如果不等于就--,如果cont为零,则下次这数就是nums[i]了
int majorityElement(int* nums, int numsSize) 
{
    int can = nums[0];
    int s = 1;
    for(int i = 1; i<numsSize;i++)
    {
        if(s == 0)
        can = nums[i];

        if(nums[i] == can)
        s++;
        else
        s--;
    }
    return can;
}
相关推荐
☼←安于亥时→❦13 小时前
PyTorch之张量创建与运算
人工智能·算法·机器学习
起个昵称吧13 小时前
立即数、栈、汇编与C函数的调用
c语言·开发语言·汇编
子豪-中国机器人13 小时前
枚举算法和排序算法能力测试
开发语言·c++·算法
qiuyunoqy13 小时前
基础算法之二分算法 --- 2
算法
1白天的黑夜113 小时前
栈-844.比较含退格的字符串-力扣(LeetCode)
c++·leetcode·
重生之我是Java开发战士13 小时前
【数据结构】Java集合框架:List与ArrayList
java·数据结构·list
爱干饭的boy14 小时前
手写Spring底层机制的实现【初始化IOC容器+依赖注入+BeanPostProcesson机制+AOP】
java·数据结构·后端·算法·spring
二哈不在线14 小时前
代码随想录二刷之“动态规划”~GO
算法·golang·动态规划
cellurw14 小时前
俄罗斯方块终端游戏实现 —— C语言系统编程与终端控制
c语言·算法
躲在云朵里`14 小时前
Redis深度解析:核心数据结构、线程模型与高频面试题
数据结构·数据库·redis