leetCode第6题,Z字形变换
2018-09-22 09:42
363 查看
leetCode第6题,Z字形变换
class Solution(object):
def convert(self, s, numRows):
“”"
:type s: str
:type numRows: int
:rtype: str
“”"
# 按照规则创建新的只包含一个有效字母的列表
def newList(i,numRows,count):
result = []
loc = numRows-(count-numRows)-2
for j in range(numRows):
if j == loc:
result.append(i)
else:
result.append(’ ')
return result
if (len(s)<=1 or numRows<=1) or len(s)<=numRows: return s if (numRows==2): s1 = s[::2] s2 = s[1:][::2] result1 = "".join(s1) result2 = "".join(s2) return result1+result2 storeList = [] count=0 nextS = [] for i in s: if count<numRows: nextS.append(i) elif count==numRows: storeList.append(nextS) nextS = newList(i,numRows,count) storeList.append(nextS) else: nextS = newList(i,numRows,count) storeList.append(nextS) count+=1 if coun 4000 t >= (numRows*2-2): count=0 nextS = [] if len(nextS)>0: if nextS[0]!=" ": for i in range(len(nextS), numRows): nextS.append(' ') storeList.append(nextS) resultList = [] for i in range(numRows): for j in range(len(storeList)): if storeList[j][i] != " ": # resultList+str(storeList[j][i]) resultList.append(storeList[j][i]) return "".join(resultList) # return storeList # return resultList阅读更多
相关文章推荐
- Z字形变换 - LeetCode
- 【LeetCode】之字形变换
- LeetCode | 6. ZigZag Conversion(之字形变换)
- LeetCode 6 Z字形变换(字符串)
- leetcode 第6题 ZigZag Conversion
- 【LeetCode-面试算法经典-Java实现】【103-Binary Tree Zigzag Level Order Traversal(二叉树分层Z字形遍历)】
- [LeetCode 第6题] -- Insertion Sort List
- LeetCode Word Ladder 找单词变换梯
- lintcode/leetcode由易至难第6题:Number Complement
- [LeetCode] 103. Binary Tree Zigzag Level Order Traversal 二叉树的之字形层序遍历
- 【leetcode】第6题:ZigZag
- 算法中可以使用不等式变换避免溢出,leetcode:Sqrt(x) ,BigInteger处理溢出
- leetcode【第七周】Z字形排序字符串
- LeetCode 6. ZigZag Conversion--字符串按之字形放置,然后横向顺序输出
- [LeetCode-6]ZigZag字符串的变换输出
- Leetcode 第6题 ZIGZAG后,行列输出
- leetcode 第6-8题
- Leetcode 127. Word Ladder 字符变换 解题报告
- 【LeetCode笔记】Binary Tree Zigzag Level Order Traversal 二叉树Z字形遍历
- leetCode 103.Binary Tree Zigzag Level Order Traversal (二叉树Z字形水平序) 解题思路和方法