ํ
ํ๋ ์ ์ ์ ์ถ ๋ฐฉ์์ ์๋ฃ๊ตฌ์กฐ์ด๋ค. ์๋ฅผ ๋ค์ด ๋ฒ์ค๋ฅผ ํ๋ ค๊ณ ์น๊ฐ์ฅ์ ๋์ฐฉํ ์น๊ฐ๋ค์ ์ฐจ๋ก๋๋ก ์ค์ ์๊ฒ๋๋ค.
์น๊ฐ๋ค์ ๋จผ์ ์จ ์์๋๋ก ๋ฒ์ค์ ํ์นํ๊ฒ ๋๋ค.
ํ์ ์๋ฃ๋ฅผ ํ ๊ฐ ์ง์ด๋ฃ๋ ๋์์ '์ธํ(enqueue)', ํ ์์ ์๋ ์๋ฃ๋ฅผ ํ ๊ฐ ๊บผ๋ด๋ ๋์ฅ์ '๋ํ(dequeue)'๋ผ๊ณ ํ๋ค.
์คํ
์คํ์ ์ ์๋ฅผ ์๋๊ฒ์ฒ๋ผ ์ฐจ๊ณก์ฐจ๊ณก ์๋ ๋ฐฉ์์ ์๋ฃ๊ตฌ์กฐ์ด๋ค. ์๋ฅผ ๋ค์ด ์ ์๋ฅผ ์์์ฌ๋ฆด ๋ ์ฐจ๊ณก์ฐจ๊ณก ์ ์๋ฅผ ์๊ณ ์ค๊ฑฐ์ง๋ฅผ ํ ๋ ๋งจ ๋ฐ์ ์ ์๋ถํฐ ๋ฆ๋๊ฒ ์๋๋ผ ๋ง์ง๋ง์ผ๋ก ์์ ์ ์๋ถํฐ ๋ฆ๊ฒ ๋๋ค.
์คํ์ ์๋ฃ๋ฅผ ํ๋ ์ง์ด๋ฃ๋ ๋์์ 'ํธ์(push)', ์คํ ์์ ์๋ ์๋ฃ๋ฅผ ๊บผ๋ด๋ ๋์์ 'ํ(pop)'์ด๋ผ๊ณ ํ๋ค.
ํ์ ์คํ์ ์ด์ฉํ ํ๋ฌธ์ฐพ๊ธฐ ์๊ณ ๋ฆฌ์ฆ
def palindrome(s):
qu = []
st = []
for x in s:
if x.isalpha():
qu.append(x.lower())
st.append(x.lower())
while qu:
if qu.pop(0) != st.pop():
return False
return True
print(palindrome("Wow"))
print(palindrome("Madam, I'm Adam."))
print(palindrome("Madam, I am Adam."))
๊ฒฐ๊ณผ
True
True
False
์ฐธ๊ณ
isalpha()ํจ์๋ ์ํ๋ฒณ ๋ฌธ์์ธ์ง ์๋์ง ํ์ธํ๋ ํจ์์ด๋ค. ์ด๋ฅผ ํตํด ๊ณต๋ฐฑ, ์ซ์, ํน์๋ฌธ์๋ฑ์ ๊ฑธ๋ฌ์ค๋ค.
lower()ํจ์๋ ์ํ๋ฒณ์ ์๋ฌธ์๋ก ๋ฐ๊ฟ์ค๋ค.
'Algorithm > Python' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[Python] ๋ฐฑ์ค 6118 - ์จ๋ฐ๊ผญ์ง (0) | 2023.02.03 |
---|---|
[Python] ๊ทธ๋ํ ์๊ณ ๋ฆฌ์ฆ - ์น๊ตฌ์ ์น๊ตฌ์ฐพ๊ธฐ (1) | 2020.09.07 |
[Python] ์ด๋ถ ํ์ (0) | 2020.08.26 |
[Python] ํต ์ ๋ ฌ (0) | 2020.08.25 |
[Python] ๋ณํฉ์ ๋ ฌ (0) | 2020.08.23 |