0
点赞
收藏
分享

微信扫一扫

三维跨孔电磁波CT数据可视化框架搭建

55f0f6eb5fef45b8b31fc561c321cc87.png

目录

选择题:

题一:

题二:

题三:

题四:

题五:

编程题:

题一:珠玑妙算

思路一:

题二:两数之和

思路一:

本人实力有限可能对一些地方解释和理解的不够清晰,可以自己尝试读代码,或者评论区指出错误,望海涵!

感谢大佬们的一键三连! 感谢大佬们的一键三连! 感谢大佬们的一键三连!


选择题:

题一:

题二:

题三:

题四:

题五:

编程题:

题一:珠玑妙算

面试题 16.15. 珠玑妙算 - 力扣(LeetCode)

baadd4325bb441628f5c81c40a2ab567.png

思路一:

        第一步:定义两个数组arr1,arr2记录两数组单词(颜色)的个数,开辟两个int类型大小的tmp输出的数组元素个数为2;

        第二步:遍历数组将相同的记录,不相同的在字母数组颜色中+1;

        第三步:遍历一遍字母表数组,满足同时有字母且有相同颜色时tmp+当前数组元素的最小值;

        第四步:返回tmp。

int* masterMind(char* solution, char* guess, int* returnSize)
{
    //记录两数组单词(颜色)的个数
    int arr1[26] = {0};
    int arr2[26] = {0};
    int* tmp = (int*)calloc(2,sizeof(int));
    *returnSize = 2;
    //将相同的记录,不相同的在数组颜色中+1
    for(int i = 0; i < 4; i++ )
    {
        if(solution[i] != guess[i])
        {
            arr1[solution[i] - 65] ++;
            arr2[guess[i] - 65] ++;
        }
        else
        {
            tmp[0]++; 
        }
    }
    
    for(int i = 0; i < 26; i++ )
    {
        //有相同颜色时,将数量给tmp[1]
        if(arr1[i] > 0 && arr2[i] > 0)
        {
            tmp[1] += arr1[i] > arr2[i] ? arr2[i] : arr1[i];
        }
    }
    return tmp;
}

题二:两数之和

两数之和_牛客题霸_牛客网 (nowcoder.com)

b133b3d7289b4739af498d56002dac60.png

思路一:

双重for循环暴力破解:

        第一步:开辟动态内存大小为两个int类型的tmp,输出的数组元素个数为2;

        第二步:双重for循环:计算当前数与后面的的数相加是否=target相同:tmp[0] = i + 1;
tmp[1] = j + 1(+1是因为题目没有0下标位)返回tmp;

        第三步:遍历结束都没有符合条件的两个下标,就将返回置NULL。

int* twoSum(int* numbers, int numbersLen, int target, int* returnSize ) 
{
    int* tmp = (int*)malloc(sizeof(int) * 2);
    *returnSize = 2;
    //计算当前数与后面的的数相加是否=target
    for(int i = 0; i < numbersLen; i++ )
    {
        //跳过不符合的数
        if(numbers[i] > target)
            continue;
        for(int j = i+1; j < numbersLen; j++)
        {
            if(numbers[i] + numbers[j] == target)
            {
                tmp[0] = i + 1;
                tmp[1] = j + 1;
                return tmp; 
            }
        }
    }
    //为空时
    *returnSize = 0;
    return NULL;
}

本人实力有限可能对一些地方解释和理解的不够清晰,可以自己尝试读代码,或者评论区指出错误,望海涵!

感谢大佬们的一键三连! 感谢大佬们的一键三连! 感谢大佬们的一键三连!

                                              c90de1178d0345148d109f22b2169307.jpeg

举报

相关推荐

0 条评论