首页 > 其他 > 详细

Z字形变换

时间:2020-06-21 20:16:16      阅读:50      评论:0      收藏:0      [点我收藏+]

将一个给定字符串根据给定的行数,以从上往下、从左到右进行 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提交通过

Z字形变换

原文:https://www.cnblogs.com/zhenjianyu/p/13173646.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!