佛性学习–简称佛学
6. ZigZag Conversion
每行都相当一个数组
按Z字形 上下遍历 当行数为第一行或者最后一行时,换方向
最后把数组拼起来就可以了
class Solution {
public String convert(String s, int numRows) {
List<StringBuffer> row= new ArrayList<>();
for(int i=0;i<numRows;i++)
row.add(new StringBuffer());
char cs[]=s.toCharArray();
int change=-1;
int rowNum=0;
for(char c:cs){
if(numRows==1)
return s;
row.get(rowNum).append(c);
if(rowNum==numRows-1||rowNum==0){
change=change==-1?1:-1;
}
rowNum+=change;
}
StringBuffer result=new StringBuffer();
for(StringBuffer r:row){
result.append(r);
}
return result.toString();
}
}