`
plan454
  • 浏览: 6974 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
最近访客 更多访客>>
社区版块
存档分类
最新评论

ZigZag Conversion

 
阅读更多
The string "PAYPALISHIRING" is written in a zigzag pattern on a given number of rows like this: (you may want to display this pattern in a fixed font for better legibility)

P   A   H   N
A P L S I I G
Y   I   R
And then read line by line: "PAHNAPLSIIGYIR"
Write the code that will take a string and make this conversion given a number of rows:

string convert(string text, int nRows);
convert("PAYPALISHIRING", 3) should return "PAHNAPLSIIGYIR".
关于这题,只要找到那个规律就行了,2nRows-2个字符一个循环,所以之后根据规律编写就行了。主要还是先理解这个题目意思。
public class Solution {
    public String convert(String s, int nRows) {
      String end = "";
        String[] temp = new String[nRows];
        for(int i = 0 ;i<nRows;i++){
        temp[i] = "";
        }
        int lineNum = 2*nRows-2;
        if(s.length()>nRows&&nRows != 1){
        for(int i = 0;i<s.length();i++){
        if((i+1)%lineNum - nRows > 0 ||(i+1)%lineNum == 0){
        int k = (i+1)%lineNum==0?lineNum - nRows: (i+1)%lineNum - nRows;
        temp[nRows-1-k] += s.charAt(i);
        }else{
        temp[(i+1)%lineNum-1] += s.charAt(i);
        }
        }
        for(String j : temp){
        end += j;
        }
        }else{
        end = s;
        }
        return end;
    }
}
分享到:
评论

相关推荐

    LeetCode6 ZigZag Conversion

    The string "PAYPALISHIRING" is written in a zigzag pattern on a given number of rows like this: (you may want to display this pattern in a fixed font for better legibility) Java AC版本

    zigzag-conversion

    The string "PAYPALISHIRING" is written in a zigzag pattern on a given number of rows like this: (you may want to display this pattern in a fixed font for better legibility) P A H N A P L S I I G Y I ...

    leetcode2sumc-leetcode_journey:挑战完整的leetcode,每周至少一题!

    Conversion,则可以生成一个空的测试文件以及一个模板代码文件ZigZag_Conversion.cpp,cpp的内容如下: #include "comm_header.h" int main() { int test_cases = input(); for (int i = 1; i &lt;= test_cases; +...

    cpp-算法精粹

    ZigZag Conversion Divide Two Integers Text Justification Max Points on a Line Community QQ 群: 237669375 Github: https://www.github.com/soulmachine/algorithm-essentials 微博: @灵魂机器 License ...

    leetcode530-algorithm:算法

    Conversion 007 Reverse Integer 008 String to Integer (atoi) 009 Palindrome Number 010 Regular Expression Matching 011 Container With Most Water 012 Integer to Roman 013 Roman to Integer 014 Longest ...

    leetcode双人赛-LeetCode:力扣笔记

    Conversion 中等 矩阵 重要 Reverse Integer 简单 字串 String to Integer (atoi) 中等 字串 麻烦 Palindrome Number 简单 字串 Container With Most Water 中等 动态规划 重要 Integer to Roman 中等 重要 Roman to...

    leetcode题库-LeetCode-Go:用GO回答LeetCode

    leetcode题库 LeetCode-Go 理论基础 见Note 脑图 TODO ...Conversion 37.5% Medium 0007 Reverse Integer 25.8% Easy 0008 String to Integer (atoi) 15.5% Medium 0009 Palindrome Number 49.4% Easy

    leetcodepython001-algorithm:leetcode问题(cpp、java、python),书籍破解_the_coding

    Conversion 007. Reverse Integer 008. String to Integer 009. Palindrome Number 010. Regular Expression Matching 011. Container With Most Water 012. Integer to Roman 013. Roman to Integer 014. Longest ...

    LeetCode最全代码

    ...The number of questions is increasing recently. Here is the classification of all `468` questions. ...I'll keep updating for full summary and better solutions....|-----|---------------- | --------------- |...

    leetcode2sumc-leetcode:JavaScript版本leetcode中文版代码

    Conversion 中等 7 Reverse Integer 简单 8 String to Integer (atoi) 中等 9 Palindrome Number 简单 11 Container With Most Water 中等 12 Integer to Roman 中等 13 Roman to Integer 简单 14 Longest Common ...

    leetcode338-LeetCode:LeetCode刷题总结

    Conversion 7.Reverse Integer 8.String to Integer (atoi) 9.Palindrome Number 10.Regular Expression Matching 11.Container With Most Water 12.Integer to Roman 13.Roman to Integer 14.Longest Common Prefix...

    leetcode2sum-Problems:编程问题的回购

    leetcode 2sum # Programming-Problems This will have many problems ...Conversion [Medium] LC7: Reverse Integer [Easy] LC8: String To Integer Atoi [Medium] LC9: Palindrome Number [Easy] LC11:

    分割数组求最大差值leetcode-Leetcode-Road:LeetCode刷题记录

    Conversion 45.6% 中等 7 Reverse Integer 33.2% 简单 8 String to Integer (atoi) 18.5% 中等 9 Palindrome Number 56.7% 简单 10 Regular Expression Matching 25.3% 困难 11 Container With Most Water 59.3% ...

    Leetcode回文串拼接-leetcode_note:用于记录leetcode题目的解析

    Conversion 7.Reverse Integer 8.String To Integer 9.Palindrome Number 10.String To Integer 11.Container With Most Water 12.Integer To Roman 13.Roman To Integer 289 347 380 442 457 Circular Array Loop ...

    leetcode答案-leetcode:leetcode问题解决方案

    leetcode ...Conversion Medium com.bcat.algorithms.medium.ZigZagConversionSol 7 Reverse Integer Easy com.bcat.algorithms.easy.ReverseIntegerSol 8 String to Integer (atoi) Medium com.bc

    leetcode跳跃-LeCode:乐科

    Conversion Z字型变换 7. Reverse Integer 整数反转 8. String to Integer (atoi) 字符串转换整数 (atoi) 9. Palindrome Number 回文数 10. Regular Expression Matching 正则表达式匹配 11. Container With Most ...

    leetcode实现strstr-leetcode-js:js刷leetcode

    leetcode实现strstr leetcode-js 记录刷leetcode分析过程,...Conversion 逻辑 2019/09/13 0007 Reverse Integer 逻辑 2019/09/13 0008 String To Integer 2019/09/14 0009 Palindrome Number 双指针 2019/09/17 0010

    leetcode316-leetcode_script:leetcode题解更新脚本

    Conversion Easy -&gt; Medium 8 String to Integer (atoi) Easy -&gt; Medium 19 Remove Nth Node From End of List Easy -&gt; Medium 33 Search in Rotated Sorted Array Hard -&gt; Medium 35 Search Insert Position Medium...

    leetcode分类-LeetCode:LeetCode在线裁判C++

    ZigZag Conversion SingleNumber 其他算法 各种SingleNumber变种 LinkListCycle I II 其他变种 编程之美 Preorder Traversal Inorder Traver sal postorder 非递归 不用栈! 字符串常用操作 字符串 各种转换 Pow(x,n...

    leetcode答案-LeetCode:我的力扣解决方案

    Conversion: Find the Regulation. 11. Container With Most Water 问题简述:给出一个list a,找到一组i,j使得**min(a[i],a[j])*(j-i)**最大   思路:设置首位指针h,t 从较小的一段往中间移动,同时更新答案 12. ...

Global site tag (gtag.js) - Google Analytics