zoukankan      html  css  js  c++  java
  • leetcode143zigzag-conversion

    题目描述

    字符串"PAYPALISHIRING"写成3行的Z字形的样式如下:

    P   A   H   N↵A P L S I I G↵Y   I   R


    按行读这个Z字形图案应该是 "PAHNAPLSIIGYIR"

    请编写代码完成将字符串转化为指定行数的Z字形字符串:

    string convert(string text, int nRows);


    convert("PAYPALISHIRING", 3)应该返回"PAHNAPLSIIGYIR"

    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"
    示例1

    输入

    复制
    "AB",2

    输出

    复制
    "AB"
    class Solution {
    public:
        /**
         *
         * @param s string字符串
         * @param nRows int整型
         * @return string字符串
         */
        string convert(string s, int nRows) {
            // write code here
            if (nRows <=1) return s;
            int t=nRows+nRows -2;//求出循环周期
            string res="";
            vector <string> m(nRows,res);
            for (int i=0;i<s.length();i++){
                int a=i%t;
                if (a<nRows)//往下走
                    m[a]+=s[i];
                else
                    m[t-a]+=s[i];//往上走
                
            }
            for (int i=0;i<nRows;i++)
                res+=m[i];
            return res;
            
            
        }
    };



  • 相关阅读:
    通过C#来加载X509格式证书文件并生成RSA对象
    .NET删除字节数组中的0字节
    让.NET 4.0支持TLS1.2协议
    剖析信用卡 DCC 交易
    Python私有变量
    Python中类的定义
    SQL join中on与where区别
    Python私有函数和公开函数
    Python实现装饰模式的一段代码
    Python的sorted函数应用
  • 原文地址:https://www.cnblogs.com/hrnn/p/13353534.html
Copyright © 2011-2022 走看看