-
์ ๋ค๋ฆญ ํจ์ map(_:) ์ฌ์ฉํ๊ธฐGeneral/๐ก Algorithm 2021. 2. 25. 23:55
Swift ์นดํ ๊ณ ๋ฆฌ์๋ ํด๋น๋์ง๋ง, ์ฒ์ ์ฌ์ฉํด์ผ๊ฒ ๋ค๊ณ ์๊ฐํ ๊ฒ์ด ์๊ณ ๋ฆฌ์ฆ ๋ฌธ์ ๋ฅผ ํ๋ฉด์์ด๊ธฐ ๋๋ฌธ์ ์ด ์ชฝ์ ๊ธ์ ์ฌ๋ฆฌ๊ฒ ๋์์ต๋๋ค. ํ์ฌ ์ ๊ฐ ์ฌ์ฉํ๋ ค๋ ๋ชฉ์ ์ ๋จ ํ ๊ฐ์ง ์ ๋๋ค! ๋ชฉ์ ๋ถํ์ํ ์๋ฃ๊ตฌ์กฐ ์ด๊ธฐํ ์ฝ๋๋ฅผ ์์ ๊ณ , for-in ๋ฌธ์ ์ฌ์ฉํ์ง ์๋ ๊น๋ํ ์ฝ๋๋ฅผ ์ง๊ธฐ ์ํด์ ๋ค๋ฅธ ํ์ฉ ๋ฐฉ๋ฒ์ ํ์ํ ๋ ๋์ค์ ์ตํ์ ํ์ฉํ๋ ค๊ณ ํฉ๋๋ค. ๋งต์ ์ฌ์ฉํ ์ ์๋ ๊ณณ ๋ฐฐ์ด, ๋์ ๋๋ฆฌ, ์ธํธ ๋ฑ Sequence, Collection ํ๋กํ ์ฝ ์ ์ฑํํ ํ์ ๊ณผ ์ต์ ๋ ๋งต ํธ์ถ์ ์ผ์ด๋๋ ์ผ 1. ์ปจํ ์ด๋๊ฐ ๋ด๊ณ ์๋ ๊ฐ๊ฐ์ ๊ฐ์ ํ๋ผ๋ฏธํฐ๋ก ์ ๋ฌ๋ฐ์ ํจ์์ ์ ์ฉํฉ๋๋ค. 2. ๊ฐ๋ค์ ๋ค์ ํฌ์ฅํ์ฌ ์๋ก์ด ์ปจํ ์ด๋์ ํฌ์ฅํ์ฌ ๋ฐํํฉ๋๋ค. ๋ชจ๋ ๊ฐ์ ์ํํ๋ฏ๋ก ์๊ฐ๋ณต์ก๋๋ O(n) ์ด ๋๊ฒ ์ต๋๋ค! map ..
-
isEmpty ์ count == 0General/๐ก Algorithm 2021. 2. 25. 11:04
์ค์ํํธ์์ isEmpty ๋ ํญ์ O(1) ์ ์๊ฐ ๋ณต์ก๋๋ฅผ ๊ฐ์ง๋๋ค. ๋ฐ๋ฉด์ count == 0 ์ RandomAccessCollection ํ๋กํ ์ฝ ์ ์ฑํํ์ง ์์ ์๋ฃ๊ตฌ์กฐ๋ผ๋ฉด ์ฐ์ ํด๋น ์๋ฃ๊ตฌ์กฐ๋ฅผ ์ ์ฒด ์ํํ๋ฏ๋ก O(n) ์ ์๊ฐ๋ณต์ก๋๋ฅผ ๊ฐ์ง๋๋ค. " ๊ฐ์ฅ ๋ํ์ ์ธ ์ปฌ๋ ์ 3๊ฐ์ง: List ( O ) , Set ( X ) , Dictionary ( X ) " public mutating func dequeue(_ element: T) -> T? { if self.isEmpty { return nil } return array.removeFirst() } ๋ฐ๋ผ์ ์ฌ์ฉํ๋ ์๋ฃ๊ตฌ์กฐ์ ๋ฐ๋ผ O(1) ์ผ๋ก ๊ตฌํํ ์ ์๋ ๋ฉ์๋๋ O(n) ์ด ๋ ์ ์์ผ๋ฏ๋ก ์ฃผ์ํด์ผ ํฉ๋๋ค. ๋!