| |
|
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
| -> 数据结构与算法 -> 【LeetCode】No.6. Zigzag Conversion -- Java Version -> 正文阅读 |
|
|
[数据结构与算法]【LeetCode】No.6. Zigzag Conversion -- Java Version |
|
题目链接: https://leetcode.com/problems/zigzag-conversion/ 1. 题目介绍(之字形)The string 【Translate】: 字符串“PAYPALISHIRING”在给定的行数上以之字形的方式书写,如下所示:(为了更好的可读性,您可能需要使用固定的字体来显示此模式) 【Translate】: 按行读取 “PAHNAPLSIIGYIR” Write the code that will take a string and make this conversion given a number of rows: 【Translate】: 编写代码,该代码将接受一个字符串,并根据给定的行数进行转换 测试用例:
2. 题解2.1 从上到下 按列存储( StringBuffer[] )??该题解来源于dylan_yu。其基本思想就是通过生成对应长度的StringBuffer[]去根据限定条件存储对应的字符。通过
2.2 从上到下 按列存储( StringBuilder[] )??与2.1中的思想一致,只不过将 StringBuffer[] 替换成了 StringBuilder[],两者功能相同,但是StringBuilder[]的速度要比StringBuffer[]快,但是安全性要低。
2.3 Sort by Row – O(n)??Solution中的Approach 1。从左到右遍历s,将每个字符附加到适当的行。可以使用两个变量跟踪适当的行:当前行和当前方向。只有当我们向上移动到最上面一行或向下移动到最下面一行时,当前的方向才会改变。
2.4 Visit by Row – O(n)??Solution中的Approach 2。首先访问第0行中的所有字符,然后是第1行,然后是第2行,依此类推……;纯数学推理了。
3. 可参考[1] Java StringBuffer 和 StringBuilder 类 |
|
|
|
|
| 上一篇文章 下一篇文章 查看所有文章 |
|
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
| 360图书馆 购物 三丰科技 阅读网 日历 万年历 2025年11日历 | -2025/11/23 6:42:25- |
|
| 网站联系: qq:121756557 email:121756557@qq.com IT数码 |