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

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

复制代码
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;
}
相关推荐
玛丽莲茼蒿3 分钟前
LeetCode hot100【相交链表】【简单】
算法·leetcode·职场和发展
罗湖老棍子4 分钟前
They Are Everywhere(Codeforces- P701C)
算法·滑动窗口·codeforce题解
wen__xvn4 分钟前
力扣模拟题刷题
算法·leetcode
bbbb3654 分钟前
算法复杂度与能耗关系的多变量分析研究的技术7
算法
不要秃头的小孩7 分钟前
力扣刷题——111.二叉树的最小深度
数据结构·python·算法·leetcode
wutang0ka18 分钟前
LeeCode HOT 100 104.二叉树的最大深度
算法
散峰而望23 分钟前
【基础算法】从入门到实战:递归型枚举与回溯剪枝,暴力搜索的初级优化指南
数据结构·c++·后端·算法·机器学习·github·剪枝
setmoon21425 分钟前
C++代码规范化工具
开发语言·c++·算法
进击的小头44 分钟前
第15篇:MPC的发展方向及展望
python·算法
We་ct1 小时前
LeetCode 35. 搜索插入位置:二分查找的经典应用
前端·算法·leetcode·typescript·个人开发