Python垂直列印單詞
假設我們有一個字串s。我們必須按其在s中出現的順序查詢所有垂直方向上的單詞。這裡單詞作為字串列表返回,我們需要在必要時用空格補齊。(不允許尾隨空格)。每個單詞只放在一列中,並且一列中只有一個單詞。因此,如果輸入字串是“HOW ARE YOU”,則輸出將為[“HAY”, “ORO”, “WEU”]。
為了解決這個問題,我們將遵循以下步驟:
s := 將字串按空格分割成一個字串列表,建立一個空陣列x,設定row = 0
對於s中的每個單詞i,設定row := row和i的長度的最大值
col := s的長度
建立一個數組並用空字串填充,其大小為row
對於i從0到col – 1的範圍
j := 0
當j < s[i]的長度
當i – ans[j]的長度 >= 1時,執行ans[j] := ans[j]連線“ ”
ans[j] := ans[j]連線s[i, j]
j自增1
返回ans
示例(Python)
讓我們看看下面的實現以更好地理解:
class Solution(object):
def printVertically(self, s):
s = s.split(" ")
x = []
row = 0
for i in s:
row = max(row, len(i))
col = len(s)
ans = ["" for i in range(row)]
j = 0
for i in range(col):
j = 0
while j < len(s[i]):
#print(j, i)
while i - len(ans[j]) >= 1:
ans[j] += " "
ans[j] += s[i][j]
j += 1
return ans
ob = Solution()
print(ob.printVertically("HOW ARE YOU"))
print(ob.printVertically("TO BE OR NOT TO BE"))輸入
"HOW ARE YOU" "TO BE OR NOT TO BE"
輸出
["HAY","ORO","WEU"] ["TBONTB","OEROOE"," T"]
廣告
資料結構
網路
關係資料庫管理系統(RDBMS)
作業系統
Java
iOS
HTML
CSS
Android
Python
C語言程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP