easy程度题
The string "PAYPALISHIRING" is written in a zigzag pattern on a given number of rows like
this: (you may want to display this pattern in a fixed font for better legibility)
P A H N A P L S I I G Y I RAnd then read line by line:
"PAHNAPLSIIGYIR"
Write the code that will take a string and make this conversion given a number of rows:
string convert(string text, int nRows);
convert("PAYPALISHIRING", 3) should
return "PAHNAPLSIIGYIR"
给一个字符串,把它按Z形排列,然后按行输出。
class Solution
{
public:
string convert(string s, int numRows)
{
string add[numRows];
int j,i=0,m;
while(i<s.size())
{
for(j=0;i<s.size()&&j<numRows;j++)
add[j]+=s[i++];
for(j=numRows-2;i<s.size()&&j>0;j--)
add[j]+=s[i++];
}
string result="";
for(int i=0;i<numRows;i++)
result+=add[i];
return result;
}
};
本文介绍了一个字符串转换问题:如何将给定的字符串以Z形方式分布在指定数量的行上,并按行读取输出。提供了完整的C++代码实现,包括一个Solution类及其中的方法convert,该方法接受一个字符串和行数作为参数,返回转换后的结果。
524

被折叠的 条评论
为什么被折叠?



