美文网首页
c语言计算汉明距离

c语言计算汉明距离

作者: 一路向后 | 来源:发表于2021-04-12 22:02 被阅读0次

1.源码实现

#include <stdio.h>
#include <stdlib.h>
#include <string.h>

char xor(char a, char b)
{
    if(a == b)
    {
        return 0;
    }

    return 1;
}

int hanming(char *a, char *b, char *c)
{
    int d = 0;
    int u;
    int i;

    for(i=0; a[i]!=0x00&&b[i]!=0x00; i++)
    {
        c[i] = xor(a[i], b[i]);
    }

    if(a[i] != 0x00)
    {
        while(a[i] != 0x00)
        {
            c[i] = 1;
            i++;
        }
    }
    else if(b[i] != 0x00)
    {
        while(b[i] != 0x00)
        {
            c[i] = 1;
            i++;
        }
    }

    u = i;

    for(i=0; i<u; i++)
    {
        c[i] && d++;
    }

    return d;
}

int main()
{
    char a[1024];
    char b[1024];
    char c[1024];

    scanf("%s", a);
    scanf("%s", b);

    printf("%d\n", hanming(a, b, c));

    return 0;
}

2.编译源码

$ gcc -o example examle.c -std=c89

3.运行及其结果

$ ./example
coast
roast
1

相关文章

  • c语言计算汉明距离

    1.源码实现 2.编译源码 3.运行及其结果

  • 算法 - 计算汉明距离

    算法 - 计算汉明距离[https://jackniu81.github.io/2021/05/27/Algori...

  • 汉明距离、超立方体、异或的一些知识

    汉明距离和汉明重量 汉明距离是以理查德·卫斯里·汉明的名字命名的。在信息论中,两个等长字符串之间的汉明距离是两个字...

  • LeetCode 461.汉明距离

    ?博客原文 :《LeetCode 461.汉明距离 - JavaScript》 汉明距离定义:两个整数之间的汉明距...

  • 汉明距离及其高效计算方式

    什么是汉明距离 下面引用自维基百科: 在信息论中,两个等长字符串之间的汉明距离(英语:Hamming distan...

  • 算法-汉明距离

    题目描述 两个整数之间的汉明距离是指,相应二进制位不同的位置的数目。给你两个整数x和y,计算他们之间的汉明距离。其...

  • 汉明距离

  • 汉明距离

    两个整数之间的汉明距离指的是这两个数字对应二进制位不同的位置的数目。 给出两个整数 x 和 y,计算它们之间的汉明...

  • 汉明距离

    指的是两个(相同长度)字符串,你变成我,我变成你,需要换掉多少个字符的总和,即Max(Sum1,Sum2),比如...

  • 汉明距离

    题目来源:力扣(LeetCode)链接:https://leetcode-cn.com/problems/hamm...

网友评论

      本文标题:c语言计算汉明距离

      本文链接:https://www.haomeiwen.com/subject/ffeflltx.html