leetCode---字符串篇(中等 & 困难)

【做题步骤】

1、原题目

2、自己的第一遍解法

3、网上的好解法

4、自己可以改进的地方

5、精简优化自己的代码直至无可精简

6、获得的思考

anki记录错题 & 关键解法/思路(数据结构与算法总结)、复习计划


❤6、Z字形变换

https://leetcode-cn.com/problems/zigzag-conversion/

【题目】

将一个给定字符串根据给定的行数,以从上往下、从左到右进行 Z 字形排列。

比如输入字符串为 "LEETCODEISHIRING" 行数为 3 时,排列如下:

L  C  I  R

E T O E S I I G

E  D  H  N

之后,你的输出需要从左往右逐行读取,产生出一个新的字符串,比如:"LCIRETOESIIGEDHN"。

请你实现这个将字符串进行指定行数变换的函数。

我的解法:×

高级解法:使用 Math.min(numRows, s.length() 来表示 Z 字形图案中的非空行。

从左到右迭代 ss,将每个字符添加到合适的行。可以使用当前行和当前方向这两个变量对合适的行进行跟踪。

只有当我们向上移动到最上面的行或向下移动到最下面的行时,当前方向才会发生改变。

❤22、括号生成


【困难】❤1163、按字典序排在最后的子串

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容