์•Œ๊ณ ๋ฆฌ์ฆ˜๐Ÿฅš 43

[ํŒŒ์ด์ฌ ๊ธฐ๋ณธ ๋ฐ์ดํ„ฐ ๊ตฌ์กฐ] 3. ์ปฌ๋ž™์…˜ Collections

* ์ด ๊ธ€์€ ๋„ค์ด๋ฒ„ ๋ถ€์ŠคํŠธ ์ฝ”์Šค์˜ ์ธ๊ณต์ง€๋Šฅ(AI) ๊ธฐ์ดˆ ๋‹ค์ง€๊ธฐ ๊ฐ•์˜๋ฅผ ์ˆ˜๊ฐ•ํ•˜๋ฉฐ ์ •๋ฆฌํ•œ ๊ธ€์ž…๋‹ˆ๋‹ค. ์ปฌ๋ž™์…˜ ๋ชจ๋“ˆ์ด๋ž€? ๋ฆฌ์ŠคํŠธ, ํŠœํ”Œ, ๋”•์…”๋„ˆ๋ฆฌ์— ๋Œ€ํ•œ ํŒŒ์ด์ฌ ๋นŒ๋“œ์ธ ์ž๋ฃŒ๊ตฌ์กฐ๋กœ, ํŽธ์˜์„ฑ, ์‹คํ–‰ํšจ์œจ์„ ์ œ๊ณต 1) import deque - ์Šคํƒ๊ณผ ํ๋ฅผ ์ง€์› - doubled ended queue๋กœ ์–‘๋ฐฉํ–ฅ ๋งํฌ๋“œ ๋ฆฌ์ŠคํŠธ๋กœ ๊ตฌํ˜„๋จ - ์ผ๋ฐ˜ ๋ฆฌ์ŠคํŠธ์— ๋น„ํ•ด ๊ธธ์ด 100๊ฐœ์˜ ๋ฆฌ์ŠคํŠธ ๊ธฐ์ค€ 3๋ฐฐ ์‹œ๊ฐ„์ด ์ค„์–ด๋“ฆ HTML ์‚ฝ์ž… ๋ฏธ๋ฆฌ๋ณด๊ธฐํ•  ์ˆ˜ ์—†๋Š” ์†Œ์Šค 2) import Counter - ํ•ด๋‹น ๋ชจ๋“ˆ์€ ๊ธฐ์–ตํ•ด๋‘๊ธฐ - Sequence type์˜ data element๋“ค์˜ ๊ฐฏ์ˆ˜๋ฅผ dict ํ˜•ํƒœ๋กœ ๋ฐ˜ํ™˜ HTML ์‚ฝ์ž… ๋ฏธ๋ฆฌ๋ณด๊ธฐํ•  ์ˆ˜ ์—†๋Š” ์†Œ์Šค - counter -> list HTML ์‚ฝ์ž… ๋ฏธ๋ฆฌ๋ณด๊ธฐํ•  ์ˆ˜ ์—†๋Š” ์†Œ์Šค - ์ง‘ํ•ฉ์—ฐ์‚ฐ ์‚ฌ์šฉ ๊ฐ€๋Šฅ +..

[ํŒŒ์ด์ฌ ๊ธฐ๋ณธ ๋ฐ์ดํ„ฐ ๊ตฌ์กฐ] 2. ํŠœํ”Œ, ์„ธํŠธ, ๋”•์…”๋„ˆ๋ฆฌ

* ์ด ๊ธ€์€ ๋„ค์ด๋ฒ„ ๋ถ€์ŠคํŠธ ์ฝ”์Šค์˜ ์ธ๊ณต์ง€๋Šฅ(AI) ๊ธฐ์ดˆ ๋‹ค์ง€๊ธฐ ๊ฐ•์˜๋ฅผ ์ˆ˜๊ฐ•ํ•˜๋ฉฐ ์ •๋ฆฌํ•œ ๊ธ€์ž…๋‹ˆ๋‹ค. 1) ํŠœํ”Œ Tuple : ๊ฐ’์˜ ๋ณ€๊ฒฝ์ด ๋ถˆ๊ฐ€๋Šฅํ•œ ๋ฆฌ์ŠคํŠธ - ํ™œ์šฉ : ํ”„๋กœ๊ทธ๋žจ์ด ์ž‘๋™ํ•˜๋Š” ๋™์•ˆ ๋ณ€๊ฒฝ๋˜์ง€ ์•Š๋Š” ๋ฐ์ดํ„ฐ ์ €์žฅ ์ฃผ๋กœ ํ•จ์ˆ˜์˜ ๋ฐ˜ํ™˜๊ฐ’์œผ๋กœ ๋งŽ์ด ์‚ฌ์šฉ๋˜์–ด ์—๋Ÿฌ๋ฅผ ๋ฐฉ์ง€ - ํŠน์ด์‚ฌํ•ญ : ๊ฐ’์˜ ์žฌํ• ๋‹น ๋ถˆ๊ฐ€๋Šฅ - ๋ฆฌ์ŠคํŠธ ์—ฐ์‚ฐ(+, * ๋“ฑ๋“ฑ), ์ธ๋ฑ์‹ฑ, ์Šฌ๋ผ์ด์‹ฑ ๊ทธ๋Œ€๋กœ ์‚ฌ์šฉ ๊ฐ€๋Šฅ ์„ ์–ธ () ๊ฐ’์ด ํ•˜๋‚˜์ธ ํŠœํ”Œ์˜ ์ •์˜ (element, ) 2) ์„ธํŠธ Set : ๊ฐ’์˜ ์ˆœ์„œ์— ์ƒ๊ด€์—†์ด ์ค‘๋ณต์ด ๋ถˆ๊ฐ€๋Šฅํ•œ ์ž๋ฃŒํ˜• - ์ง‘ํ•ฉ ์—ฐ์‚ฐ ๋‚˜์˜ค๋ฉด ์‚ฌ์šฉํ•˜๊ธฐ ์„ ์–ธ {} or set(๋ฆฌ์ŠคํŠธ) add : ํ•˜๋‚˜์˜ ์›์†Œ๋ฅผ ์ถ”๊ฐ€ํ•˜๋Š” ํ•จ์ˆ˜ set.add(element) update : ์—ฌ๋Ÿฌ๊ฐœ์˜ ์›์†Œ๋ฅผ ์ถ”๊ฐ€ํ•˜๋Š” ํ•จ์ˆ˜ set.update(list) remov..

[ํŒŒ์ด์ฌ ๊ธฐ๋ณธ ๋ฐ์ดํ„ฐ ๊ตฌ์กฐ] 1. ์Šคํƒ๊ณผ ํ

* ์ด ๊ธ€์€ ๋„ค์ด๋ฒ„ ๋ถ€์ŠคํŠธ ์ฝ”์Šค์˜ ์ธ๊ณต์ง€๋Šฅ(AI) ๊ธฐ์ดˆ ๋‹ค์ง€๊ธฐ ๊ฐ•์˜๋ฅผ ์ˆ˜๊ฐ•ํ•˜๋ฉฐ ์ •๋ฆฌํ•œ ๊ธ€์ž…๋‹ˆ๋‹ค. ์‚ฌ๋‹ด) ์–ผ๋งˆ์ „ ์ธํ„ด ๋ชจ์˜๋ฉด์ ‘์— ์šฐ์—ฐํžˆ ์ฐธ์—ฌํ•  ๊ธฐํšŒ๊ฐ€ ์ƒ๊ฒผ๋Š”๋ฐ ์Šคํƒ๊ณผ ํ๋ฅผ ํ—ท๊ฐˆ๋ ค๋ฒ„๋ ธ๋‹ค. ํ”„๋กœ์ ํŠธ ์œ„์ฃผ๋กœ ์ง„ํ–‰๋˜๋Š” ์ˆ˜์—…์ด ๋งŽ์•˜์–ด์„œ ๊ธฐ์ดˆ๋ฅผ ์žŠ์–ด๋ฒ„๋ฆฐ๊ฒŒ ํ‹€๋ฆผ์—†๋‹ค. 0ใ…‡0 ๋‹ค์‹œ ์ดˆ์‹ฌ์œผ๋กœ ๋Œ์•„๊ฐ€ ๊ผผ๊ผผํ•˜๊ฒŒ ์ •๋ฆฌํ•ด ๋ณด์ž. 1) ์Šคํƒ Stack (=์‚ฌ๋‹ค๋ฆฌ. ์ œ์ผ ๋‚˜์ค‘์— ์˜ฌ๋ผ๊ฐ„ ์‚ฌ๋žŒ์ด ๋จผ์ € ๋‚ด๋ ค์™€์•ผ ์ „ ์‚ฌ๋žŒ๋“ค์ด ๋‚ด๋ ค์˜ด) - ๋‚˜์ค‘์— ๋„ฃ์€ ๋ฐ์ดํ„ฐ๋ฅผ ๋จผ์ € ๋ฐ˜ํ™˜ํ•˜๋„๋ก ์„ค๊ณ„๋œ ๋ฉ”๋ชจ๋ฆฌ ๊ตฌ์กฐ - LIFO (Last In First Out) - ๊ธฐ๋Šฅ : Push, Pop, Top, Empty - ๊ตฌํ˜„ : List Push : ์›์†Œ๋ฅผ ์‚ฝ์ž…ํ•˜๋Š” ํ•จ์ˆ˜ list.append(element) Pop : ์ œ์ผ ๋‚˜์ค‘์˜ ์›์†Œ๋ฅผ ๋ฐ˜ํ™˜ํ•˜๊ณ  ์‚ญ์ œํ•˜๋Š” ํ•จ์ˆ˜ l..

728x90