lc6 ZigZag Conversion

分成两步,

第一步垂直向下,

1

1

1

1

第二步倾斜向上

1      1 

1    1

1  1

1

用nRows个StringBuilder 然后将他们合并即可

 class Solution {
public String convert(String s, int numRows) {
if(s.length() < numRows)
return s;
if(numRows < 2)
return s;
String[] res = new String[numRows];
for(int i=0; i<numRows; i++){
res[i] = Character.toString(s.charAt(i));
} for(int i=numRows; i<s.length(); i++){
int tmp = i % (2*numRows - 2);
if(tmp >= 0 && tmp < numRows){
res[tmp] += (s.charAt(i));
}else{
res[numRows-tmp%(numRows-1)-1] += (s.charAt(i));
}
}
StringBuilder sb = new StringBuilder();
for(String i : res)
sb.append(i);
return sb.toString(); }
}

lc6 ZigZag Conversion的更多相关文章

  1. 【leetcode❤python】 6. ZigZag Conversion

    #-*- coding: UTF-8 -*- #ZigZag Conversion :之字型class Solution(object):    def convert(self, s, numRow ...

  2. 64. ZigZag Conversion

    ZigZag Conversion The string "PAYPALISHIRING" is written in a zigzag pattern on a given nu ...

  3. No.006 ZigZag Conversion

    6. ZigZag Conversion Total Accepted: 98584 Total Submissions: 398018 Difficulty: Easy The string &qu ...

  4. leetcode第六题 ZigZag Conversion (java)

    ZigZag Conversion The string "PAYPALISHIRING" is written in a zigzag pattern on a given nu ...

  5. leetcode题解 6.ZigZag Conversion

    6.ZigZag Conversion 题目: The string "PAYPALISHIRING" is written in a zigzag pattern on a gi ...

  6. 6.[leetcode] ZigZag Conversion

    The string "PAYPALISHIRING" is written in a zigzag pattern on a given number of rows like ...

  7. 字符串按照Z旋转90度然后上下翻转的字形按行输出字符串--ZigZag Conversion

    The string "PAYPALISHIRING" is written in a zigzag pattern on a given number of rows like ...

  8. LeetCode--No.006 ZigZag Conversion

    6. ZigZag Conversion Total Accepted: 98584 Total Submissions: 398018 Difficulty: Easy The string &qu ...

  9. leetcode-algorithms-6 ZigZag Conversion

    leetcode-algorithms-6 ZigZag Conversion The string "PAYPALISHIRING" is written in a zigzag ...

随机推荐

  1. leetcode-157周赛-5214-最长定差子序列

    题目描述: class Solution: def longestSubsequence(self, arr: List[int], difference: int) -> int: dp = ...

  2. leetcode-220-存在重复元素③*

    题目描述: 方法一:二叉搜索树+滑动窗口 方法二:桶排序 O(N) class Solution: def containsNearbyAlmostDuplicate(self, nums: List ...

  3. leetcode-40-组合总和②

    题目描述: 方法一:回溯 class Solution: def combinationSum2(self, candidates: List[int], target: int) -> Lis ...

  4. [JZOJ3337] 【NOI2013模拟】wyl8899的TLE

    题目 题目大意 给你两个字符串\(A\)和\(B\),可以修改\(A\)中的一个字符,求修改后最长的\(A\)的前缀,使它是\(B\)的子串. 思考历程 看到这道题之后,第一眼想到的就是后缀自动机! ...

  5. SQL Server DOC

    { https://docs.microsoft.com/zh-cn/sql/sql-server/index?view=sql-server-ver15 }

  6. day22_2-sys模块

    # ********************day22_2-sys模块 *******************# ********************day22_2-sys模块 ********* ...

  7. Java学习之Java历史版本

    Java有三个版本,标准版Java SE,企业版Java EE,移动版Java ME.按理来说,每一种版本都会有自己的版本号,但是约定俗成:JDK版本号=Java SE版本号=Java版本号,这是因为 ...

  8. java笔试之放苹果

    题目描述:M个同样的苹果放在N个同样的盘子里,允许有的盘子空着不放,问共有多少种不同的分法?(用K表示)5,1,1和1,5,1 是同一种分法. 输入:每个用例包含二个整数M和N.0<=m< ...

  9. 《我是一只IT小小鸟》读书笔记 PB16110698 第四周(~3.29)

    <我是一只IT小小鸟>读书笔记 本周在邓老师的推荐下,我阅读了<我是一只IT小小鸟>,这本书由21位初入职场的IT人的传记组成,记录了他们成长道路上的酸甜苦辣.书中一段段鲜活生 ...

  10. Math: Fibonacci

    https://www.zhihu.com/question/28062458 http://blog.csdn.net/hikean/article/details/9749391 对于Fibona ...