44.Z字形变换

2022/1/11 23:04:18

本文主要是介绍44.Z字形变换,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

在这里插入图片描述

我的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做法
在这里插入图片描述



这篇关于44.Z字形变换的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!


扫一扫关注最新编程教程