public class Solution {
public String convert(String s, int nRows) {
// Start typing your Java solution below
// DO NOT write main() function
StringBuilder[] sb = new StringBuilder[nRows];
if(nRows==1) return s;
int len = s.length();
for(int t = 0; t < nRows; t++){
sb[t] = new StringBuilder();
}
int i = 0;
int row = 0;
while(i<len){
while(row<=nRows-1&&i<len){
sb[row].append(s.charAt(i++));
if(row==nRows-1){row--;break;}
row++;
}
while(row>=0&&i<len){
sb[row].append(s.charAt(i++));
if(row==0){row++;break;}
row--;
}
}
StringBuilder ret = new StringBuilder();
for(i=0;i<nRows;i++){
ret.append(sb[i]);
}
return ret.toString();
}
public static void main(String[] args){
StringBuilder[] sb = null;
String a = "PAYPALISHIRING";
Solution s = new Solution();
String t = s.convert(a,2);
System.out.print(t);
}
}
ZigZag Conversion
最新推荐文章于 2021-08-10 16:47:56 发布