[问题] Leet Code第17题网络解答的2个问题

楼主: Dong0129 (阿东跟上面讲的情况一样b)   2019-01-16 15:14:27
Code如下
vector<string> solution(string digits)
{
if (digits.empty()) return {};
vector<string> res;
string dict[] = {"", "", "abc", "def", "ghi", "jkl", "mno", "pqrs", "t
uv", "wxyz"};
for (int i = 0; i < digits.size(); ++i) {
vector<string> t;
int index=digits[i]-'0';
string str = dict[index];
for (int j = 0; j < str.size(); ++j) {
for (string s : res) t.push_back(s + str[j]);
}
res = t;
}
return res;
}
各位版友好,
用C++刷leetcode第17题时遇到几个问题,
这是在网络上找到的解答...
有2个问题想请教,
1. int index=digits[i]-'0';中,digits[i] ]-'0'的意义是什么?
2. for (string s : res) t.push_back(s + str[j]);中,res并没有给予初始值,请问
这个for循环能顺利执行?
这个答案放上leetcode是可以顺利解答的,
但是在local端没办法得到解答...
麻烦理解的版友帮忙解惑,谢谢!
作者: jerryh001   2019-01-16 15:24:00
1.是把文字的"数字"转成int
作者: s4300026 (s4300026)   2019-01-16 16:55:00
我看到好多问号
作者: x246libra (楓)   2019-01-16 17:08:00
人工空白吧,我猜
作者: nickchen1202 (Nickchen Nick)   2019-01-16 22:04:00
2. 是C++11的Range-based for loophttps://tinyurl.com/yaazv8pt

Links booklink

Contact Us: admin [ a t ] ucptt.com