1722. 执行交换操作后的最小汉明距离(并查集)

1722. 执行交换操作后的最小汉明距离

并查集

class Solution {
public:
    vectorp;
    int find(int x){
        if(p[x]!=x)p[x]=find(p[x]);
        return p[x];
    }

    void merge(int a,int b){
        int ra=find(a),rb=find(b);
        p[ra]=rb;
    }
    int minimumHammingDistance(vector& s, vector& t, vector>& as) {
        int n=s.size();
        p=vector(n);
        for(int i=0;i>mp;
        for(int i=0;iv=i.second;
            int l=v.size();
            vectoraa(l),bb(l);
            mapm1,m2;
            for(int i=0;i

跟这个题差不多 1202. 交换字符串中的元素

class Solution {
public:
    vectorp;
    int find(int x){
        if(p[x]!=x)p[x]=find(p[x]);
        return p[x];
    }
    void merge(int a,int b){
        int ra=find(a),rb=find(b);
        p[ra]=rb;
    }
    string smallestStringWithSwaps(string s, vector>& pairs) {
        int n=s.size();
        p.resize(n);
        for(int i=0;i>mp;

        for(int i=0;i

你可能感兴趣的:(1722. 执行交换操作后的最小汉明距离(并查集))