力扣中档题的简单写法:在链表中插入最大公约数

其实暴力遍历开数组也可以,但不如以下新建链表块的方法简单

复制代码
int FindCommDivisor(int num1, int num2)
{
    int n;
    int i;
    n = fmin(num1, num2);
    for (i = n; i >= 1; i--) {
        if (num1 % i == 0 && num2 % i == 0) {
            return i;
        }
    }
    return 0;
}

struct ListNode *insertGreatestCommonDivisors(struct ListNode *head)
{
    struct ListNode *p1 = head;
    while (p1->next) {
        struct ListNode *node = malloc(sizeof(struct ListNode));   
        node->val = FindCommDivisor(p1->val, p1->next->val);
        node->next = p1->next;
        p1->next = node;
        p1 = node->next;
    }
    return head;
}
相关推荐
superman超哥7 小时前
仓颉语言中基本数据类型的深度剖析与工程实践
c语言·开发语言·python·算法·仓颉
Learner__Q7 小时前
每天五分钟:滑动窗口-LeetCode高频题解析_day3
python·算法·leetcode
阿昭L8 小时前
leetcode链表相交
算法·leetcode·链表
闻缺陷则喜何志丹8 小时前
【计算几何】仿射变换与齐次矩阵
c++·数学·算法·矩阵·计算几何
liuyao_xianhui8 小时前
0~n-1中缺失的数字_优选算法(二分查找)
算法
hmbbcsm8 小时前
python做题小记(八)
开发语言·c++·算法
机器学习之心9 小时前
基于Stacking集成学习算法的数据回归预测(4种基学习器PLS、SVM、BP、RF,元学习器LSBoost)MATLAB代码
算法·回归·集成学习·stacking集成学习
图像生成小菜鸟9 小时前
Score Based diffusion model 数学推导
算法·机器学习·概率论
声声codeGrandMaster9 小时前
AI之模型提升
人工智能·pytorch·python·算法·ai
黄金小码农9 小时前
工具坐标系
算法