組合語言中有一種移位指令叫做迴圈左移(rol),現在有個簡單的任務,就是用字串模擬這個指令的運算結果。對於乙個給定的字串行s,請你把其迴圈左移k位後的序列輸出。例如,字串行s=」abcxyzdef」,要求輸出迴圈左移3位後的結果,即「xyzdefabc」。是不是很簡單?ok,搞定它!
題目鏈結
第二種方法的解題思路是ba = (a_t*b_t)_t,即ba等於a的轉置乘以b的轉置的轉置
# -*- coding:utf-8 -*-
class
solution
:def
leftrotatestring
(self, s, n)
:# write code here
iflen
(s)<=0or
len(s)
return
''return s[n:
]+s[
:n]
# -*- coding:utf-8 -*-
class
solution
:def
leftrotatestring
(self, s, n)
:# write code here
iflen
(s)<=0or
len(s)
return
'' s =
list
(s) length =
len(s)
for i in
range
(n>>1)
:s[i]
,s[n-
1-i]
= s[n-
1-i]
,s[i]
for i in
range
((length-n)
>>1)
:s[n+i]
,s[length-
1-i]
= s[length-
1-i]
,s[n+i]
for i in
range
((length)
>>1)
:s[i]
,s[length-
1-i]
= s[length-
1-i]
,s[i]
return
''.join(s)
劍指offer 左旋轉字串
題目描述 組合語言中有一種移位指令叫做迴圈左移 rol 現在有個簡單的任務,就是用字串模擬這個指令的運算結果。對於乙個給定的字串行s,請你把其迴圈左移k位後的序列輸出。例如,字串行s abcxyzdef 要求輸出迴圈左移3位後的結果,即 xyzdefabc 是不是很簡單?ok,搞定它!class s...
劍指offer 左旋轉字串
題目描述 組合語言中有一種移位指令叫做迴圈左移 rol 現在有個簡單的任務,就是用字串模擬這個指令的運算結果。對於乙個給定的字串行s,請你把其迴圈左移k位後的序列輸出。例如,字串行s abcxyzdef 要求輸出迴圈左移3位後的結果,即 xyzdefabc 是不是很簡單?ok,搞定它!思路 先擷取下...
劍指offer 左旋轉字串
題目描述 組合語言中有一種移位指令叫做迴圈左移 rol 現在有個簡單的任務,就是用字串模擬這個指令的運算結果。對於乙個給定的字串行s,請你把其迴圈左移k位後的序列輸出。例如,字串行s abcxyzdef 要求輸出迴圈左移3位後的結果,即 xyzdefabc 是不是很簡單?ok,搞定它!利用線性代數公...