zoukankan      html  css  js  c++  java
  • Z字形变换

    将一个给定字符串根据给定的行数,以从上往下、从左到右进行 Z 字形排列。

    function convert(s, numRows) {
        if(numRows == 1){
            return s
        }
        let arr = []
        for(let i = 0;i < s.length;i++){
            let subArr = new Array(numRows)
            let item = s[i]
            if(arr.length % (numRows-1) == 0){
                for(let j = 0;j < numRows;j++){
                    subArr[j] = s[i+j]
                }
                i += (numRows-1)
                arr.push(subArr)
            }else{
                subArr[numRows - arr.length % (numRows-1) -1] = item
                arr.push(subArr)
            }
        }
        let str = ''
        for(let i = 0;i < numRows;i++){
            for(let j = 0;j < arr.length;j++){
                str +=  arr[j][i]?arr[j][i] :''  
            }
        }
        return str
    }
    

    Leecode提交通过

  • 相关阅读:
    3.22
    练习 3.16
    简单工厂模式
    Java-不可变字符串
    java中的缓冲流
    TCP协议下java通信
    nginx优化
    nginx反向代理
    shell-for循环
    shell-数组
  • 原文地址:https://www.cnblogs.com/zhenjianyu/p/13173646.html
Copyright © 2011-2022 走看看