ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค - ์˜ฌ๋ฐ”๋ฅธ ๊ด„ํ˜ธ(Swift)

2022. 10. 8. 11:11ใ†ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค-Swift

ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค - ์˜ฌ๋ฐ”๋ฅธ ๊ด„ํ˜ธ(Swift)

 

 

 ๋ฌธ์ œ ์„ค๋ช…

 

https://school.programmers.co.kr/learn/courses/30/lessons/12909

 

ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค

์ฝ”๋“œ ์ค‘์‹ฌ์˜ ๊ฐœ๋ฐœ์ž ์ฑ„์šฉ. ์Šคํƒ ๊ธฐ๋ฐ˜์˜ ํฌ์ง€์…˜ ๋งค์นญ. ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค์˜ ๊ฐœ๋ฐœ์ž ๋งž์ถคํ˜• ํ”„๋กœํ•„์„ ๋“ฑ๋กํ•˜๊ณ , ๋‚˜์™€ ๊ธฐ์ˆ  ๊ถํ•ฉ์ด ์ž˜ ๋งž๋Š” ๊ธฐ์—…๋“ค์„ ๋งค์นญ ๋ฐ›์œผ์„ธ์š”.

programmers.co.kr

 

 

 ๋‚˜์˜ ํ’€์ด

 

๋ฐฐ์—ด์„ ์Šคํƒ์œผ๋กœ ์‚ฌ์šฉํ•ด์„œ ํ’€์—ˆ๋‹ค.

ํ•˜์ง€๋งŒ ์ฒ˜์Œ์— ๋ฐฐ์—ด์„ [String]๊ฐ’์œผ๋กœ ์„ ์–ธํ–ˆ๊ธฐ์— ๊ฐ ๋ฌธ์ž์—ด์˜ ๋ฌธ์ž์— ๋Œ€ํ•ด์„œ String์œผ๋กœ ๋ณ€ํ™˜์‹œ์ผœ์„œ ์ œ์ถœํ–ˆ์—ˆ๋Š”๋ฐ ํšจ์œจ์„ฑ ํ…Œ์ŠคํŠธ์—์„œ ๊ฑธ๋ ธ์—ˆ๋‹ค.

์ด ๋ถ€๋ถ„์„ Character๋ฐฐ์—ด๋กœ ๋ฐ”๊พธ๊ณ  ์ง„ํ–‰ํ•˜๋‹ˆ ์ž˜ ํ†ต๊ณผํ–ˆ๋‹ค.!๐Ÿ‘

 

import Foundation

func solution(_ s:String) -> Bool
{
    var stack: [Character] = []
    for x in s {
        stack.append(x)
        if stack.count != 1 && x == ")" {
            if stack[stack.endIndex-2] == "(" {
                stack.popLast()
                stack.popLast()
            }
        }
    }
    return stack.isEmpty ? true : false
}

 

 

 ํ”ผ๋“œ๋ฐฑ

 

๋ฐฐ์—ด์—์„œ append์™€ popLast๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด ์Šคํƒ์œผ๋กœ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋‹ค.