zoukankan      html  css  js  c++  java
  • 【leetcode】两句话中的不常见单词

    char ** uncommonFromSentences(char * A, char * B, int* returnSize){
        int alen = strlen(A);
        int blen = strlen(B);
    
        if (!alen && !blen)
        {
            * returnSize = 0;
            return NULL;
        }
        char* str = (char*)calloc(alen+blen+2,1); 
        if (alen)
        {
            strcpy(str,A);
            strcat(str," ");
            strcat(str,B);
        }
        else strcat(str, B);
        int len = strlen(str);
        char** arr = (char**)malloc(201*sizeof(char*));
        char* s[200] = {0};
        int hash[200] = {0};
        int index = 0;
        int flag = true;
        char* p = str;
        int n = 0;
        for (int i=0; i<len+1; i++)
        {
            if (str[i] == ' ' || str[i] == '')
            {
                str[i] = '';
                for(int j=0; j<=index; j++)
                {            
                    if (s[j] && !strcmp(s[j],p))
                    {
                        hash[j]++;
                        flag = false;
                        break;
                    }
                }
                if (flag)
                {
                    hash[index]++;
                    s[index++] = p;
                }
                flag = true;
                p = &str[i+1];
            }
        }
        for (int j=0; j<index; j++)
        {
            if (hash[j]<2)
            {
                arr[n++] =  s[j];
            }
        }
        *returnSize = n;
        return arr;
    }
  • 相关阅读:
    代码管理模型概况
    循环链表
    队列

    链表
    java 2020-10-12T11:22:49.000+0800 字符串转换成正常时间格式
    动态数组
    mysql练习
    复杂度与LeetCode
    记一次带逗号的数字类型处理
  • 原文地址:https://www.cnblogs.com/ganxiang/p/13582021.html
Copyright © 2011-2022 走看看