python棧 字串反轉,括號匹配

2022-04-07 03:37:04 字數 1566 閱讀 4133

棧的實現:

1

#定義乙個棧類

2class

stack():3#

棧的初始化

4def

__init__

(self):

5 self.items =6#

判斷棧是否為空,為空返回true

7def

isempty(self):

8return self.items ==9#

向棧內壓入乙個元素

10def

push(self, item):

1112

#從棧內推出最後乙個元素

13def

pop(self):

14return

self.items.pop()15#

返回棧頂元素

16def

peek(self):

17return self.items[len(self.items)-1]18#

判斷棧的大小

19def

size(self):

20return len(self.items)

字串反**

1

#字串反轉

2def

revstring(str):

3 s =stack()

4 outputstr = ''56

for i in

str:

7s.push(i)

8while

nots.isempty():

9 outputstr +=s.pop()

1011

return outputstr

括號匹配:

1

#括號匹配

2def

parcheker(str):

3 s =stack()

4 balanced =true

5 index =0

6while indexand

balanced:

7 str1 =str[index]

8if str1 in'([

'29return opens.index(open) == closes.index(close)

十進位制轉換成二進位制:

1

#十進位制轉換為二進位制

2def

dec2bin(num):

3 s =stack()

4while num>0:

5 temp = num%2

6s.push(temp)

7 num = num // 2

89 binstring = ''

10while

nots.isempty():

11 binstring +=str(s.pop())

1213

return binstring

參考:

python 字串反轉

usr bin env python3 coding utf 8 filename reverse string.py author zoujiameng aliyun.com.cn 題目描述 給定乙個句子 只包含字母和空格 將句子中的單詞位置反轉,單詞用空格分割,單詞之間只有乙個空格,前後沒有空格...

Python 字串反轉

一 字串切片 簡潔 res s 1 二 借助listt的reverse 2.使用list的reverse函式 3.使用join函式將列表中元素組合成乙個字串 l list s res join l.reverse 三 使用reduce函式 result reduce lambda x,y y x,s...

python 反轉字串

例如 s abcdef 要求反轉輸出 fedcba 方法1 字串切片 s 1 方法2 將字串s轉成列表 利用列表的.reverse 反轉函式解決 ls list s ls.reverse print join ls 方法3 ls list s result for l in range len ls...