LeetCode 6 Z字形变换
将字符串 "PAYPALISHIRING"
以Z字形排列成给定的行数:
P A H N A P L S I I G Y I R
之后从左往右,逐行读取字符:"PAHNAPLSIIGYIR"
实现一个将字符串进行指定行数变换的函数:
string convert(string s, int numRows);
示例 1:
输入: s = "PAYPALISHIRING", numRows = 3 输出: "PAHNAPLSIIGYIR"
示例 2:
输入: s = "PAYPALISHIRING", numRows = 4 输出: "PINALSIGYAHRPI" 解释:P I N A L S I G Y A H R P I
示例代码:
方法一:
#!/usr/bin/python3
import math
def convert(s, numRows):stringBuf =['']*numRowslength = len(s)i = 0while i<length:for idx in range(0,numRows):if i < length:stringBuf[idx] += s[i]i=i+1 for idx in range(numRows-2,0,-1):if idx>=1 and i <length:stringBuf[idx] += s[i]i=i+1result = ""for x in stringBuf:result+=xreturn result
print("input the string:")
str = input()
print("input the num of row:")
num = int(input())
print(convert(str,num))
方法二:
#!/usr/bin/python3
import math
def convert(s, numRows):if numRows == 1 or numRows >= len(s):return sL =['']*numRowsindex,step = 0,1for x in s:L[index] += xif index == 0:step = 1elif index == numRows - 1:step = -1index += stepreturn ''.join(L)
print("input the string:")
str = input()
print("input the num of row:")
num = int(input())
print(convert(str,num))
LeetCode 6 Z字形变换相关推荐
- [模拟|字符串] leetcode 6 Z字形变换
[模拟|字符串] leetcode 6 Z字形变换 1.题目 题目链接 将一个给定字符串根据给定的行数,以从上往下.从左到右进行 Z 字形排列. 比如输入字符串为 "LEETCODEISHI ...
- LeetCode 6.z字形变换
LeetCode 6.z字形变换 将一个给定字符串根据给定的行数,以从上往下.从左到右进行 Z 字形排列. 比如输入字符串为 "LEETCODEISHIRING" 行数为 3 时, ...
- Java实现 LeetCode 6 Z字形变换
6. Z 字形变换 将一个给定字符串根据给定的行数,以从上往下.从左到右进行 Z 字形排列. 比如输入字符串为 "LEETCODEISHIRING" 行数为 3 时,排列如下: L ...
- LeetCode——6. Z 字形变换
6. Z 字形变换(中等难度) 题目描述: 将一个给定字符串 s 根据给定的行数 numRows ,以从上往下.从左到右进行 Z 字形排列. 比如输入字符串为 "PAYPALISHIRING ...
- LeetCode 6. Z 字形变换(找规律)
1. 题目 将一个给定字符串根据给定的行数,以从上往下.从左到右进行 Z 字形排列. 比如输入字符串为 "LEETCODEISHIRING" 行数为 3 时,排列如下: L C I ...
- Leetcode 006. Z 字形变换 | 每日一题
题目描述: 将一个给定字符串根据给定的行数,以从上往下.从左到右进行Z 字形排列. 比如输入字符串为 "LEETCODEISHIRING" 行数为 3 时,排列如下: L C I ...
- Leetcode 6.Z 字形变换 (每日一题 20210630)
将一个给定字符串 s 根据给定的行数 numRows ,以从上往下.从左到右进行 Z 字形排列.比如输入字符串为 "PAYPALISHIRING" 行数为 3 时,排列如下:P A ...
- leetcode —— 6. Z 字形变换
将一个给定字符串根据给定的行数,以从上往下.从左到右进行 Z 字形排列. 比如输入字符串为 "LEETCODEISHIRING" 行数为 3 时,排列如下: L C I R E T ...
- LeetCode 6. Z 字形变换 (N字形变换)
将一个给定字符串 s 根据给定的行数 numRows ,以从上往下.从左到右进行 Z 字形排列. 比如输入字符串为 "PAYPALISHIRING" 行数为 3 时,排列如下: P ...
最新文章
- c++反射机制(vcl实现),mfc可依样实现
- 【原创视频】Docker总体架构设计及各模块原理剖析
- android蓝牙固件升级_AirPods Pro 如何升级固件开启「空间音频」?为何「空间音频」未生效?如何体验「空间音频」?...
- double click items in SBWP
- 隐藏SAP CRM WebClient UI personalization 里某个field
- mysql取最大一条数据,mysql取出表中,某字段值最大的一条纪录,sql语句
- 聊聊spring cloud gateway的XForwardedHeadersFilter
- POJ 1003 解题报告
- Eclipse REST 库使用
- 玩转matlab之一维 gauss 数值积分公式及matlab源代码
- Codeforces 994 C - Two Squares
- python生活中可以应用到_学完Python可以应用到工作的哪些应用中?
- 【安装包】WinSCP
- PGIS 天地图主题颜色背景修改 图片 filter 蓝色 HTML CSS IMG filter 颜色矩阵在线计算 RGBA转换 SVG feColorMatrix
- linux引导文件制作U盘,Linux下制作U盘系统启动盘的方法
- 高等教育学备考:教育学概述
- JMM(Java Memory Model)
- C语言编程之.H文件与.C文件的关系
- 【自动控制原理仿真实验】 稳定性及稳态误差实验(实验三)
- 站长便民小工具引流网站源码_站长引流工具箱
热门文章
- 计算机为什么会出现网络用户,告诉你电脑显示无internet访问权限怎么办
- 提高WPF程序性能的几条建议
- netty中的future和promise源码分析(二)
- OARCLE11G的密码管理
- MySql数据库概念
- (转)理解android.intent.action.MAIN 与 android.intent.category.LAUNCHER
- 《移动数据挖掘》—— 第1章 引言 1.1 移动数据及其价值
- Redis持久化实践及数据恢复
- ubuntu 安装redis
- MyBatis开发重点知识