我的flag翻转判断行号时递增还是递减行,但我的拼接字符串没用stringbuilder耗时
class Solution { public String convert(String s, int numRows) { //当行数为1时直接输出 if(numRows==1){ return s; } //字符串行数的下标 int count=0; String[] strall=new String[numRows]; for(int i=0;i<numRows;i++){ strall[i]=""; } //用于判断递增还是递减 boolean flag=true;//刚开始递增,之后递减 for(int i=0;i<s.length();i++){ if(count==numRows-1){ flag=false; } if(count==0){ flag=true; } if(flag==true){ strall[count]+=s.charAt(i); count++; } if(flag==false){ strall[count]+=s.charAt(i); count--; } } //拼凑这几行的字符串 for(int i=1;i<numRows;i++){ strall[0]+=strall[i]; } return strall[0]; } }
大佬的flag做法