DEV Community

Rakesh Reddy Peddamallu
Rakesh Reddy Peddamallu

Posted on

Leetcode - 6. Zigzag Conversion

/**
 * @param {string} s
 * @param {number} numRows
 * @return {string}
 */
var convert = function(s, numRows) {
if (numRows === 1) {
    return(s);
} else {
    let res  = ""
    for (let r = 0; r < numRows; r++) {
        let inc = (numRows - 1) * 2;  // Step size for the zigzag pattern

        for (let i = r; i < s.length; i += inc) {
            res+=s[i];  // Main vertical column

            // Handle diagonal elements for middle rows (not first/last row)
            let diag = i + inc - 2 * r;
            if (r > 0 && r < numRows - 1 && diag < s.length) {
                res+=s[diag];
            }
        }
    }
    return res
}

};
Enter fullscreen mode Exit fullscreen mode

Top comments (0)

Qodo Takeover

Introducing Qodo Gen 1.0: Transform Your Workflow with Agentic AI

Rather than just generating snippets, our agents understand your entire project context, can make decisions, use tools, and carry out tasks autonomously.

Read full post