zoukankan      html  css  js  c++  java
  • [leedcode 06]ZigZag Conversion

    public class Solution {
        public String convert(String s, int numRows) {
            //本题通过画图numRows=4和numRows=5可以得到规则,主线路距离是2*numRows-2;辅助行是(numRows-i-1)*2
            if(numRows<=1)return s;//注意判断
            if(s.length()<=numRows) return s;
            StringBuilder res=new StringBuilder();
            int index=0;
            for(int i=0;i<numRows;i++){//i表示行数,注意范围
                for(index=i;index<s.length();index=index+numRows*2-2){
                    res.append(s.charAt(index));
                    if(i==0||i==numRows-1)continue;//注意首尾两行
                    if(index+(numRows-i-1)*2<s.length()){
                    res.append(s.charAt(index+(numRows-i-1)*2));
                    }
                }
                
            }
            return res.toString();
        }
    }
  • 相关阅读:
    第十四周作业
    十二
    第十一周作业
    第十周作业
    第八周作业
    第七周
    软件工程作业2
    自我介绍
    2019春总结作业
    2019春第一次课程设计实验报告
  • 原文地址:https://www.cnblogs.com/qiaomu/p/4621363.html
Copyright © 2011-2022 走看看