首页 > 其他分享 >LeetCode 题解|6. Z 字形变换

LeetCode 题解|6. Z 字形变换

时间:2022-10-29 21:35:45浏览次数:80  
标签:index rows 字形 题解 numRows add let pointer LeetCode

/**
 * @param {string} s
 * @param {number} numRows
 * @return {string}
 */
var convert = function(s, numRows) {
  // 存储结果
  const rows = [];
  // 指针下一次是加一还是减一
  let add = false;
  // 指针位置
  let pointer = 0;
  for (let index = 0; index < s.length; index++) {
    if (!rows[pointer]) {
      rows[pointer] = "";
    }
    rows[pointer] += s[index] || "";
    if (pointer === 0 || pointer === numRows - 1) {
      // 指针反转
      add = !add;
    }
    pointer += add ? 1 : -1;
  }
  return rows.join("");
};

本文由一文多发运营工具平台 EaseWriting 发布

标签:index,rows,字形,题解,numRows,add,let,pointer,LeetCode
From: https://www.cnblogs.com/wangshaojiea/p/16771178.html

相关文章

  • LeetCode 题解|9. 回文数
    /***@param{number}x*@return{boolean}*/varisPalindrome=function(x){if(x<0){returnfalse;}letnum=x;letreverse=0;wh......
  • LeetCode 题解|7. 整数反转
    /***@param{number}x*@return{number}*/varreverse=function(x){letres=0;while(x!=0){res=res*10+(x%10);//划重点......
  • CSP-S2022游记&几句话题解
    T1对于每一个点\(u\),计算点权最大的三个点,满足\(dis(u,v)\lek+1,dis(1,v)\lek+1\)。然后枚举\(B,C\),\(3^2\)枚举即可。复杂度\(O(n^2)\)。考场代码#inclu......
  • python(牛客)试题解析1 - 入门级
    导航:一、NC103反转字符串二、NC141判断是否为回文字符串三、NC151最大公约数四、NC65斐波那契数列----------分-割-线-----------一、NC10......
  • #yyds干货盘点# LeetCode 腾讯精选练习 50 题:旋转链表
    题目:给你一个链表的头节点head,旋转链表,将链表每个节点向右移动 k 个位置。 示例1:输入:head=[1,2,3,4,5],k=2输出:[4,5,1,2,3]示例2:输入:head=[0,1,2],k=4输出......
  • #yyds干货盘点# LeetCode 腾讯精选练习 50 题:不同路径
    题目:一个机器人位于一个mxn 网格的左上角(起始点在下图中标记为“Start”)。机器人每次只能向下或者向右移动一步。机器人试图达到网格的右下角(在下图中标记为“Finis......
  • Leetcode第1773题:统计匹配规则的物品数量(Counting items match a rule)
    解题思路根据题意进行模拟即可,利用哈希表把输入的ruleKey转换为items[i]的下标,然后再遍历一遍items,找出符合条件的物品数量。代码如下:classSolution{public:int......
  • leetcode(力扣) 78. 子集(回溯 & 巧妙解法)
    文章目录​​题目描述​​​​法一(巧妙暴力解)​​​​思路分析​​​​完整代码​​​​法二(回溯):​​​​思路分析​​​​完整代码​​题目描述给你一个整数数组nums......
  • leetcode(力扣) 491. 递增子序列(回溯 & 去重思路)
    文章目录​​题目描述​​​​思路分析​​​​完整代码​​题目描述给你一个整数数组nums,找出并返回所有该数组中不同的递增子序列,递增子序列中至少有两个元素。你可以......
  • Leetcode 90. 子集 II
    给你一个整数数组nums,其中可能包含重复元素,请你返回该数组所有可能的子集(幂集)。解集不能包含重复的子集。返回的解集中,子集可以按任意顺序排列。示例1:输入:nums=[1......