6. Z 字形变换-力扣

【leetcode】第6题 Z字形变换,详细题解, C++实现,#6. ZigZag Conversion 这几天因为状态不太好,在这题上花了比较多的时间,记录一下。 因为题目很老了,Leetcode上关于此题的题解很多,然而很多题解解释得都不是很清楚,包括leetcode官方题解,题解中符号所表示的意思都不写明,无力吐槽,还是自己写一个当笔记吧。 题目详情 将一个给定字符串根据给定的行数,以从上往下、从左到右进行 Z 字形排列。 比如输入字符串为 “LEETCODEISHIRING” 行数为 3 时,... 阅读详情

将一个给定字符串根据给定的行数,以从上往下、从左到右进行 Z 字形排列。
L C I R
E T O E S I I G
E D H N
比如输入字符串为 “LEETCODEISHIRING” 行数为 3 时,排列如下:
之后,你的输出需要从左往右逐行读取,产生出一个新的字符串,比如:“LCIRETOESIIGEDHN”。
请你实现这个将字符串进行指定行数变换的函数:
string convert(string s, int numRows);
示例 1:
输入: s = “LEETCODEISHIRING”, numRows = 3
输出: “LCIRETOESIIGEDHN”

func convert(s string, numRows int) string {

    if(len(s )< 2 || numRows <2){
        return s
    }

    str := make([]string ,numRows)
    flag := 1
    step := 0
    var res string

//利用字符串的特性,用一维字符串数组表示二位数据

   for _,v :=range s{
       // v 是字符 ,转成字符串,强类型
        str[step] += string(v)
        //处理边界问题,控制好方向的变化
        if step == numRows - 1 || (step == 0 && flag != 1 ){
            flag *= -1
        }
        step += flag
    }

    for _,v :=range str {
        res += v
    }
    return res
}
python【力扣LeetCode算法题库】6-Z 字形变换 Z 字形变换 将一个给定字符串根据给定的行数,以从上往下、从左到右进行 Z 字形排列。 比如输入字符串为 “LEETCODEISHIRING” 行数为 3 时,排列如下: L C I R E T O E S I I G E D H N 之后,你的输出需要从左往右逐行读取,产生出一个新的字符串,比如:“LCIRETOESIIGEDHN”。 请你实现这个将字符串进行指定行数... 阅读详情

相关推荐

LeetCode 第6题:Z字形变换

通过这些例子,我们可以看到Z字形变换的过程其实就像是我们在操控一条蛇,让它在指定的行数之间上下游走。这个算法的时间复杂度是O(n),因为我们只需要遍历一次字符串,空间复杂度也是O(n),因为我们用了额外的行数组来存储结果。希望通过这些例子的讲解,大家能更好地理解这个有趣的题目。

Gemini的博客 642

分型图"z=z*z+c"的画法

python代码: import numpy as np from PIL import Image from numba import jit MAXITERS = 200 RADIUS = 100 @jit def color(z, i): v = np.log2(i+1-np.log2(np.log2(abs(z))))/5 if v < 1.0: r...

1908

RS485 MODBUS转PROFINET网关案例丨汇川变频器接入到1200 PROFINET

本案例介绍的是用北京小疆智控(北京)技术有限公司生产的GW-PN5003型MODBUS RTU转PROFINET网关将汇川变频器接入西门子PLC1200 PROFINET网络的使用方法。

bjxjzk的博客 1879

【力扣LeetCode】6 Z 字形变换

题目描述(难度中) 将一个给定字符串根据给定的行数,以从上往下、从左到右进行 Z 字形排列。 比如输入字符串为 “LEETCODEISHIRING” 行数为 3 时,排列如下: 之后,你的输出需要从左往右逐行读取,产生出一个新的字符串,比如:“LCIRETOESIIGEDHN”。 请你实现这个将字符串进行指定行数变换的函数: string convert(string s, int numRow...

Jiewang的博客 368

华中科技大学头歌 交通灯系统设计 Lojisim 详细实验报告,实验图,仅供参考

本实验也是参考了许多大神的做法,也是小白一个!有完整实验代码,实验报告,答辩PPT(ppt当时做得仓促,有点拉胯)~ 需要请评论或私QQ:3096524043(有偿~~) 一、数码管驱动 由真值表生成电路 二、四位无符号比较器设计 三、8位无符号比较器设计 四、一位2路选择器设计 五、八位2路选择器设计 六、BCD双向计数器状态机设计 七、BCD双向计数器输出函数设计 ...

FindXY的博客 1万+

保姆级教程:在RK3588开发板上编译带MPP硬件加速的FFmpeg(含完整依赖库配置)

本文提供在RK3588开发板上编译支持MPP硬件加速的FFmpeg的详细教程,涵盖交叉编译环境搭建、MPP框架及依赖库配置,最终实现4K视频硬件编解码性能优化。通过实战步骤和性能对比,展示如何充分发挥RK3588的硬件加速能力。

weixin_30839881的博客 418

#力扣 LeetCode6. Z 字形变换 @FDDLC

题目描述: 6. Z 字形变换 - 力扣(LeetCode) (leetcode-cn.com) 自测用例: "PAYPALISHIRING" 3 "PAYPALISHIRING" 4 "A" 1 "PAYPALISHIRING" 1 "PAYPALISHIRING" 2 "PAYPALISHIRING" 4 "PAYPALISHIRING" 5 "PAYPALISHIRING" 6 "a,b" 1 "a,b" 2 "a,b" 3 "a,b" 4 "a,b" 5 Java代码: c..

LiuXingchang的博客 1373

iPad秒变Mac副屏的隐藏技巧:用BetterDisplay实现无线竖屏+90度锁定

本文详细介绍了如何利用BetterDisplay软件突破苹果原生“随航”(Sidecar)功能的限制,将iPad无线设置为Mac的竖屏副屏,并实现90度方向锁定。通过创建虚拟显示器、配置分辨率与旋转参数,并校准鼠标指针,用户可以高效利用iPad的纵向空间进行文档阅读、编码等工作,显著提升多屏协作效率。

weixin_29266647的博客 603

LeetCode-6 Z字形变换

题目:6. Z字形变换 难度:中等 分类:字符串 解决方案:字符串遍历 今天我们学习第6题Z字形变换,这是一个字符串的中等题,像这样字符串的题目经常作为面试题来考察面试者算法能力和写代码能力,因此最好能手写出该题。下面我们看看这道题的题目描述。 题目描述 将一个给定字符串根据给定的行数,以从上往下、从左到右进行 Z 字形排列。 比如输入字符串为"LEETCODEISHIRING"行数为3时,...

jacob2359的博客 277

[特殊字符] PetaLinux Qt 程序(WindRadar)无法自动启动问题解决文档

摘要:本文档解决了PetaLinux 2020.1系统中Qt程序(WindRadar)无法开机自动显示界面的问题。通过分析发现,自动启动时缺少DISPLAY=:0.0环境变量导致Qt找不到显示设备。最终在autostart.sh脚本中添加该变量,并完善了字体加载、驱动加载、显示设备检测等流程,确保程序正常自启显示界面。完整脚本包含路径检测、环境配置和错误处理,经验证各项功能均正常运行。

梁俊星的博客 326

6、深入解析Microsoft 365核心服务对比与迁移策略

本文深入解析了Microsoft 365的核心服务,包括身份和设备管理、现代设备配置体验、Exchange和SharePoint的迁移策略以及Microsoft Teams的协作功能。同时探讨了迁移过程中需要考虑的安全控制措施,为组织规划和实施云迁移项目提供了全面的指导和建议。

k8s6orchestrator的博客 105

6. Z 字形变换【 力扣(LeetCode) 】

将一个给定字符串 s 根据给定的行数 numRows ,以从上往下、从左到右进行 Z 字形排列。之后,你的输出需要从左往右逐行读取,产生出一个新的字符串,比如:“PAHNAPLSIIGYIR”。

yyh520025的博客 894

GD32F103 -- LIN从机通讯 -- 程序代码 (精简版)

注意!!!注意!!!这是GD32从机通讯!!!GD32!!!GD32!!!

晴朗luo的博客 2498

golang力扣leetcode 6.Z字形变换

6.Z字形变换6.Z字形变换题解代码 6.Z字形变换 6.Z字形变换 题解 Z 字形变换(清晰图解),这个思路确实吊,别的都想复杂了 代码 package main func convert(s string, numRows int) string { if numRows == 1 || numRows >= len(s) {//只有一行,或者行数超过字符串长度 return s } res := make([][]byte, numRows) i, flag := 0, -1 f

清风 458

越野换了逐飞的ips200pro的屏幕后代码烧录中报错: “Cannot initialize device connection” 和 “Flashing failed” ...如何解决?

🏆 本文收录于《全栈Bug调优(实战版)》专栏,致力于分享我在项目实战过程中遇到的各类Bug及其原因,并提供切实有效的解决方案。无论你是初学者还是经验丰富的开发者,本文将为你指引出一条更高效的Bug修复之路,助你早日登顶,迈向财富自由的梦想🚀!同时,欢迎大家关注、收藏、订阅本专栏,更多精彩内容正在持续更新中。让我们一起进步,Up!Up!Up!    备注: 部分问题/难题源自互联网,经过精心筛选和整理,结合数位十多年大厂实战经验资深大佬经验总结所得,数条可行方案供所需之人参考。

**My Coding Family** 1149

jre9下载 jdk9

(Java SE Runtime Environment 9.0) 9.0u175 官方最新版 【x86|x64】

【力扣-6】Z字形变换 python解题思路

【力扣-6】Z字形变换 python解题思路。

ccd9287的博客 545

Camera2Demo

在Camera2 的基础上进行封装,使得Camera2一堆初始化逻辑与Activity分离,降低耦合度,完成预览拍照并保存的操作

Leetcode 6. Z 字形变换

之后,你的输出需要从左往右逐行读取,产生出一个新的字符串,比如:“PAHNAPLSIIGYIR”。将一个给定字符串 s 根据给定的行数 numRows ,以从上往下、从左到右进行 Z 字形排列。输入:s = “PAYPALISHIRING”, numRows = 3。输入:s = “PAYPALISHIRING”, numRows = 4。输入:s = “A”, numRows = 1。输出:“PAHNAPLSIIGYIR”输出:“PINALSIGYAHRPI”,想法差不多但是比我的这个简洁。

li_yizhixiaowukong的博客 984

win10 跳过U8环境检测的IE WebControls.rar

win10 安装u8的时候 提示IE WebControls 不通过,这个工具可以欺骗u8的检查。 跳过U8环境检测的IE WebControls。提示导入失败后,重新检测通过。

ssm框架搭建

这个是一个在idea上成功跑起来的ssm框架项目,保存在这里方便以后使用直接下载

【LeetCode #6 题解】 Z 字形变换

@toc 一、题目 将一个给定字符串根据给定的行数,以从上往下、从左到右进行 Z 字形排列。 比如输入字符串为 “LEETCODEISHIRING” 行数为 3 时,排列如下: L C I R E T O E S I I G E D H N 之后,你的输出需要从左往右逐行读取,产生出一个新的字符串,比如:“LCIRETOESIIGEDHN”。 请你实现这个将字符串进行指定行数变换的函数: string convert(string s, int

|~~~热爱生活、努力学习的小伙汁~~~| 623

力扣第6题-Z字形变换

输入:s = "PAYPALISHIRING", numRows = 3。输入:s = "PAYPALISHIRING", numRows = 4。输入:s = "A", numRows = 1。,以从上往下、从左到右进行 Z 字形排列。输出:"PAHNAPLSIIGYIR"输出:"PINALSIGYAHRPI"

qq_42268998的博客 621

力扣6.Z字形变换(java)

力扣6.Z字形变换题目思路代码 LeetCode笔记汇总 题目 思路 先考虑特殊情况:当行数为1时,只有一行,即直接输出s即可 当行数大于1时,由于涉及到了较多的字符串拼接,所以使用StringBuilder来处理 主要的思路为按行读取字符,则一共需要读取numRows行。观察图像我们可以发现图像结构的规律为2*numRows-2为一组。 我们以第i行(i从0开始)为例分析:首先每一组的第i个如果存在则一定就是第i行的字符。 当i不为第0行或第numRows行时,则还需添加位于z的斜边的字符 代码 c

k_surge的博客 370

力扣第6题:Z 字形变换

问题描述: 将一个给定字符串根据给定的行数,以从上往下、从左到右进行 Z 字形排列。 比如输入字符串为 “LEETCODEISHIRING” 行数为 3 时,排列如下: L C I R E T O E S I I G E D H N 之后,你的输出需要从左往右逐行读取,产生出一个新的字符串,比如:“LCIRETOESIIGEDHN”。 请你实现这个将字符串进行指定行数变换...

elinice 827

力扣6. Z 字形变换

第九十五天 --- 力扣6. Z 字形变换题目一思路:直接模拟代码 题目一 力扣:6. Z 字形变换 思路:直接模拟 1、博主写这道题的时候,看题一小时,写题十分钟,这个题太TMD,抽象了,样例也没看懂。。。。。 2、我们这道题只要看懂样例就能很简单的写出来。 3、 来解读一下样例的意思,我们按照这个顺序去读,就能读出原本的顺序,所以现在就相当于有一个numRows长度的数组,我们要按照顺序读取原本字符串,并按照上上面的顺序放进相应的数组下标中去,最后把数组中各个下标中存的string从左到右加在一起

qq_45678698的博客 762

力扣LeetCode #6 Z字形变换(Convert)

- 题目描述 将一个给定字符串根据给定的行数,以从上往下、从左到右进行 Z 字形排列。比如输入字符串为 “LEETCODEISHIRING” 行数为 3 时,排列如下: L C I R E T O E S I I G E D H N 之后,你的输出需要从左往右逐行读取,产生出一个新的字符串,比如:“LCIRETOESIIGEDHN”。 来源:LeetCode(https://leetcode-cn.com/problems/zigzag-convers

weixin_49155948的博客 218

leetcode 6 Z 字形变换 c++

6最长回文子串 补一个题目位置。https://leetcode-cn.com/problems/zigzag-conversion/ 这题是输出控制,实现了就行。 我的想法:这些字母的排列是按2∗(numRows−1)2*(numRows-1)2∗(numRows−1)的方式呈周期性的,所以对2∗(numRows−1)2*(numRows-1)2∗(numRows−1)取余就可以了。要注意num...

qq_38992914的博客 277

Java算法-力扣leetcode-6. Z 字形变换

leetcode-6. Z 字形变换 将一个给定字符串s根据给定的行数numRows,以从上往下、从左到右进行Z 字形排列。 比如输入字符串为"PAYPALISHIRING"行数为3

javaphpsqlmysql的博客 591

Leetcode 6 Z字形变换

Leetcode 6 Z字形变换 将一个给定字符串根据给定的行数,以从上往下、从左到右进行 Z 字形排列。 比如输入字符串为 “LEETCODEISHIRING” 行数为 3 时,排列如下: L C I R E T O E S I I G E D H N 之后,你的输出需要从左往右逐行读取,产生出一个新的字符串,比如:“LCIRETOESIIGEDHN”。 请你实现这个将字...

qq_30163473的博客 162
上一篇: 最长回文子串
下一篇: 刷题-两数之和
龘麤三思
博客等级 码龄10年 11粉丝 50原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值