av一区二区在线观看_亚洲男人的天堂网站_日韩亚洲视频_在线成人免费_欧美日韩精品免费观看视频_久草视

您的位置:首頁技術文章
文章詳情頁

c++ - 【LeetCode】Word Pattern

瀏覽:110日期:2022-10-13 09:35:21

問題描述

我在 LeetCode 上練習 Word Pattern(題目連接點這里),寫的程序放在本地VS2008上跑如下實例:

pattern = 'abba', str = 'dog cat cat fish' should return false.

沒有問題,返回的是false,但是放在LeetCode 上提交,提示錯誤,錯誤如下:

c++ - 【LeetCode】Word Pattern

代碼如下:

class Solution {public: bool wordPattern(string pattern, string str) {const int len = pattern.length();char * c = new char[len+1];strcpy(c, pattern.c_str() );char * arr[1024];int num = 0;char * pch;pch = strtok(c, ' ');while (pch != NULL){ arr[num++] = pch; pch = strtok(NULL, ' ');}vector<char> vecStr;vector<char *> vecPattern;for (int i = 0; i < num; ++i){ for (int j = 0; j < vecStr.size(); ++j) {if (vecStr[j] == str[i] && *(vecPattern[j]) != *(arr[i]) ){ return false;} } for (int j = 0; j < vecPattern.size(); ++j) {if (*(vecPattern[j]) == *(arr[i]) && vecStr[j] != str[i]){ return false;} } vecStr.push_back(str[i]); vecPattern.push_back(arr[i]);}return true; }};

求指教。

問題解答

回答1:

我拿你的代碼運行了一下發現就是錯的呀。為什么呢,因為

pch = strtok(c, ' '); while (pch != NULL) {arr[num++] = pch;pch = strtok(NULL, ' '); }

這里你的c本來應該是str,你卻指向了pattern。

而且我覺得你寫到后面pattern和str可能在你腦子里已經亂掉了,你還得接著往下改。

標簽: word
相關文章:
主站蜘蛛池模板: 精品一区二区三区不卡 | 国产成人免费视频 | 高清久久久 | 丁香婷婷在线视频 | 男人天堂网址 | 在线观看日韩 | 欧美日韩在线观看一区 | 日韩av在线一区二区 | 久久免费精品 | 毛片免费在线观看 | 一级片成人| av中文在线播放 | 91在线精品一区二区 | 激情91| aaaaaa大片免费看最大的 | 精品久久久久久久人人人人传媒 | 亚洲九九 | 81精品国产乱码久久久久久 | 影音先锋中文字幕在线观看 | 亚洲伊人久久综合 | 欧美一区2区三区4区公司 | 狠狠狠色丁香婷婷综合久久五月 | 国产福利在线视频 | 免费一二区 | av网站在线免费观看 | 天天看夜夜 | 蜜桃视频在线观看免费视频网站www | 一级黄a| 国产情品 | 91精品国产综合久久久密闭 | 九九福利 | 91性高湖久久久久久久久_久久99 | 91久久久久 | 久草资源网站 | 青青操91| 国产乱码精品一区二区三区忘忧草 | 亚洲一二三区在线观看 | 一区二区三区四区视频 | 狠狠爱综合| 久久国产精品一区二区三区 | 337p日本欧洲亚洲大胆 |