题目链接
题解
class Solution {
public static String convert(String s, int numRows) {
char[][] array=new char[numRows][s.length()];
int row=-1;
int col=0;
//作为标志
boolean bool=true;
//提交的时候发现的错误,行数等于1时要单独考虑
if (numRows==1){
return s;
}
for(int i=0;i<s.length();i++){
if(bool){
//行数增加列不变
row++;
array[row][col]=s.charAt(i);
if(row==numRows-1){
//增加到numRows-1更改标志
bool=false;
}
}else{
//行减列增
row--;
col++;
array[row][col]=s.charAt(i);
if(row==0){
//行减到0更改标志
bool=true;
}
}
}
//打印字符串
String result="";
for(int i=0;i<numRows;i++){
for(int j=0;j<=col;j++){
if(array[i][j]!='\u0000'){
result=result+array[i][j];
}
}
}
return result;
}
}
提交结果