C์–ธ์–ด์˜ ํฌ์ธํ„ฐ ์ดํ•ด: ์ž๋ฃŒํ˜•์œผ๋กœ์„œ์˜ *์™€ ์—ญ์ฐธ์กฐ ์—ฐ์‚ฐ์ž๋กœ์„œ์˜ *
IT/์ปดํ“จํŒ…์  ์‚ฌ๊ณ 2025. 4. 14. 14:14C์–ธ์–ด์˜ ํฌ์ธํ„ฐ ์ดํ•ด: ์ž๋ฃŒํ˜•์œผ๋กœ์„œ์˜ *์™€ ์—ญ์ฐธ์กฐ ์—ฐ์‚ฐ์ž๋กœ์„œ์˜ *

์ธํŠธ๋กœ์•„๋ž˜์™€ ๊ฐ™์€ C ์ฝ”๋“œ๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค.void main() { int value = 123; int * ptr1 = &value; printf("*ptr1: %d\n", *ptr1); // ์ถœ๋ ฅ ๊ฒฐ๊ณผ 123 *ptr1 = 456; printf("*ptr1: %d\n", *ptr1); // ์ถœ๋ ฅ ๊ฒฐ๊ณผ 456}๋ญ”๊ฐ€ ์ด์ƒํ•ฉ๋‹ˆ๋‹ค. ๋ถ„๋ช… int * ptr1 = &value์—์„œ ์ฃผ์†Œ๊ฐ’(&value)์„ ๋Œ€์ž…ํ–ˆ์Šต๋‹ˆ๋‹ค. ๊ทผ๋ฐ ๊ทธ ์•„๋ž˜์—๋Š” ๊ฐ’(456)์„ ๋Œ€์ž…ํ–ˆ๋„ค์š”. ๊ทธ๋Ÿฐ๋ฐ *ptr1 ์ถœ๋ ฅ ๊ฒฐ๊ณผ๋Š” ๋‘˜ ๋‹ค ๊ฐ’์ด๋„ค์š” (123 → 456)?ํฌ์ธํ„ฐ์— ๋Œ€ํ•ด ๊ณต๋ถ€ํ•˜๋‹ค ๋ณด๋ฉด ํ˜ผ๋ž€์Šค๋Ÿฌ์šด ๊ฒƒ ์ค‘ ํ•˜๋‚˜๊ฐ€ ๋ฐ”๋กœ, ํฌ์ธํ„ฐ ๋ณ€์ˆ˜ ์„ ์–ธ ์‹œ ์‚ฌ์šฉํ•˜๋Š” ์ž๋ฃŒํ˜• *์™€, ์—ญ์ฐธ์กฐ ์—ฐ์‚ฐ์ž(dereference operator) *..

IT/DevOps2025. 4. 13. 23:42Git์—์„œ .gitignore๊ฐ€ ๋จนํžˆ์ง€ ์•Š์„ ๋•Œ

git rm -r --cached .git add .git commit -m "untrack files contained in the .gitignore file"๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋ ค๋ฉด ๋ฆฌํฌ์ง€ํ† ๋ฆฌ์—์„œ .gitignore ํŒŒ์ผ์— ํฌํ•จ๋œ ์ถ”์ ๋œ ํŒŒ์ผ์„ ์ œ๊ฑฐํ•˜์„ธ์š”. ์œ„์™€ ๊ฐ™์ด "git rm"์„ ์‚ฌ์šฉํ•˜์—ฌ ๋ฆฌํฌ์ง€ํ† ๋ฆฌ์˜ ๋ชจ๋“  ํŒŒ์ผ์„ ์ œ๊ฑฐ ๋ฐ ์ถ”์  ํ•ด์ œํ•˜๊ณ , "git add"๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๋ชจ๋“  ํŒŒ์ผ์„ ๋‹ค์‹œ ์ถ”๊ฐ€ํ•œ ๋‹ค์Œ(.gitignore ํŒŒ์ผ์— ํฌํ•จ๋œ ํŒŒ์ผ์€ ์ถ”๊ฐ€๋˜์ง€ ์•Š์Œ) ๋งˆ์ง€๋ง‰์œผ๋กœ ๋ณ€๊ฒฝ ๋‚ด์šฉ์„ ์ปค๋ฐ‹ํ•ฉ๋‹ˆ๋‹ค.์ฐธ๊ณ : https://medium.com/sela-devops-team/gitignore-doesnt-work-e1566845d30a My .gitignore doesn’t workIn this post we will ..

C์–ธ์–ด์˜ ๋‹ค์ค‘ ํฌ์ธํ„ฐ
IT/์ปดํ“จํŒ…์  ์‚ฌ๊ณ 2025. 4. 13. 01:08C์–ธ์–ด์˜ ๋‹ค์ค‘ ํฌ์ธํ„ฐ

C์–ธ์–ด์—์„œ ํฌ์ธํ„ฐ๋Š” ๋ณ€์ˆ˜์˜ ๋ฉ”๋ชจ๋ฆฌ ์ฃผ์†Œ๋ฅผ ์ง์ ‘ ๋‹ค๋ฃจ๋Š” ์ค‘์š”ํ•œ ๊ฐœ๋…์ž…๋‹ˆ๋‹ค. ๊ทธ๋ฆฌ๊ณ  ํฌ์ธํ„ฐ๋ฅผ ๋‹ค๋ฃจ๋‹ค ๋ณด๋ฉด ๋ณ„์ด 2๊ฐœ ์ด์ƒ, ์ฆ‰ ๋‹ค์ค‘ ํฌ์ธํ„ฐ๋ฅผ ์จ์•ผ๋งŒ ํ•˜๋Š” ๊ฒฝ์šฐ๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด, ๋‹ค์ฐจ์› ๋ฐฐ์—ด์„ ๋‹ค๋ฃจ๊ฑฐ๋‚˜, ํ•จ์ˆ˜์—์„œ ํฌ์ธํ„ฐ ์ž์ฒด๋ฅผ ์ˆ˜์ •ํ•  ๋•Œ ๋‹ค์ค‘ ํฌ์ธํ„ฐ(pointer to pointer)๊ฐ€ ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค.์ด๋ฒˆ ํฌ์ŠคํŠธ์—์„œ๋Š” ํฌ์ธํ„ฐ(*) ๋ฐ ์ฃผ์†Œ๊ฐ’ ์—ฐ์‚ฐ์ž(&)์— ๋Œ€ํ•œ ๊ฐ„๋žตํ•œ ๋ณต์Šต๊ณผ ํ•จ๊ป˜, ๋‹ค์ค‘ ํฌ์ธํ„ฐ์˜ ๊ฐœ๋…์„ ์ดํ•ดํ•˜๊ณ , ์ด๋ฅผ ํ™œ์šฉํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ์˜ˆ์ œ์™€ ํ•จ๊ป˜ ์„ค๋ช…ํ•ด๋ณด๊ณ ์ž ํ•ฉ๋‹ˆ๋‹ค. ๋˜ํ•œ ๋ณ„์ด ๋ฌด์ž‘์ • ๋Š˜์–ด๋‚˜๋Š” ์˜ˆ์‹œ "๋ณ„์ด ๋‹ค์„ฏ ๊ฐœ"์™€ ์ด๋ฅผ ๋ง‰์„ ๋ฐฉ๋ฒ•์— ๋Œ€ํ•ด์„œ๋„ ํ•œ๋ฒˆ ์•Œ์•„๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค.๋‹จ์ผ ํฌ์ธํ„ฐ ๋ณต์Šต๋จผ์ € ๋‹จ์ผ ํฌ์ธํ„ฐ๋ฅผ ๋ณต์Šตํ•ด๋ด…์‹œ๋‹ค. ๋‹จ์ผ ํฌ์ธํ„ฐ๋Š” ํŠน์ • ๋ณ€์ˆ˜์˜ ์ฃผ์†Œ๊ฐ’์„ ์ €์žฅํ•˜๋Š” ๋ณ€์ˆ˜์ž…๋‹ˆ๋‹ค.int value = 42;int *p..

ํฌ๋ž˜ํ”„ํ†ค ์ •๊ธ€ 4์ฃผ์ฐจ WIL
๋‚˜์˜ ์ด์•ผ๊ธฐ/ํฌ๋ž˜ํ”„ํ†ค ์ •๊ธ€2025. 4. 12. 20:59ํฌ๋ž˜ํ”„ํ†ค ์ •๊ธ€ 4์ฃผ์ฐจ WIL

WIL: Weekly I Learned; ๋˜๋Š” What I Learned This Week์ปดํ“จํŒ…์  ์‚ฌ๊ณ ๋กœ ์ „ํ™˜ํ•˜๋‹ค์‹œ๊ฐ„์ด ์ •๋ง ๋น ๋ฆ…๋‹ˆ๋‹ค. ๋ฏธ๋‹ˆํ”„๋กœ์ ํŠธ ๋๋‚œ ๊ฒŒ ์—Š๊ทธ์ œ ๊ฐ™์€๋ฐ ๋ฒŒ์จ 4์ฃผ์ฐจ๊ฐ€ ์ง€๋‚˜๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค. ๋ฐฅ ๋จน๊ณ  ๋ฐฑ์ค€๋งŒ ํ’€๊ธฐ๋ฅผ 4์ฃผ, ์ด๋กœ์จ ์ €ํฌ๋Š” "์ปดํ“จํŒ… ์‚ฌ๊ณ ๋กœ์˜ ์ „ํ™˜"์˜ 1-4์ฃผ์ฐจ๋ฅผ ๋๋งˆ์น˜๊ฒŒ ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ์ด๋ฒˆ 1-4์ฃผ์ฐจ์—์„œ ๋ฐฐ์šด ๋‚ด์šฉ์„ ์ •๋ฆฌํ•˜์—ฌ ๋Œ€๋žต 3๊ฐ€์ง€๋กœ ๋‚˜๋ˆŒ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.์ž๋ฃŒ๊ตฌ์กฐ: ์Šคํƒ, ํ, ์šฐ์„ ์ˆœ์œ„ ํ, ๋ฑ (double-ended queue), ๋ฆฌ์ŠคํŠธ, ๋งํฌ๋“œ ๋ฆฌ์ŠคํŠธ, ํ•ด์‹œ ํ…Œ์ด๋ธ” ๊ทธ๋ž˜ํ”„ (๋…ธ๋“œ, ์—์ง€, ๊ฐ€์ค‘์น˜, ๋ฐฉํ–ฅ์„ฑ ๋“ฑ), ํŠธ๋ฆฌ, Trie, B-ํŠธ๋ฆฌ (B-Tree)์•Œ๊ณ ๋ฆฌ์ฆ˜:๊ธฐ์ดˆ (์ •์ˆ˜๋ก , ๋ฐฐ์—ด, ๋ฌธ์ž์—ด), ์‹œ๊ฐ„๋ณต์žก๋„, ๋ฐ˜๋ณต, ์žฌ๊ท€, ์ •๋ ฌ, ์™„์ „ํƒ์ƒ‰ DFS, BFS, Disjoint Se..

MobaXterm์œผ๋กœ GUI ํ”„๋กœ๊ทธ๋žจ ์‹คํ–‰ ์‹คํŒจ ์‹œ ํ•ด๊ฒฐ ํŒ
IT/Infra. & Arch. & Cloud2025. 4. 11. 15:10MobaXterm์œผ๋กœ GUI ํ”„๋กœ๊ทธ๋žจ ์‹คํ–‰ ์‹คํŒจ ์‹œ ํ•ด๊ฒฐ ํŒ

๋ฌธ์ œ์˜ค๋ฅ˜ ๋‚ด์šฉ:MoTTY X11 proxy: No authorisation providedError: cannot open display: localhost:10.0๊ธฐ๋ณธ์ ์œผ๋กœ MobaXterm์€ X11์„ ํ†ตํ•ด ์ž๋™์œผ๋กœ GUI ํ”„๋กœ๊ทธ๋žจ์„ ์‹คํ–‰ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋‚˜ snap๋กœ ์„ค์น˜๋œ ํŒŒ์ด์–ดํญ์Šค ๋“ฑ ์ผ๋ถ€ ํ”„๋กœ๊ทธ๋žจ์˜ ๊ฒฝ์šฐ ์œ„ ์ด๋ฏธ์ง€์™€ ๊ฐ™์ด ์˜ค๋ฅ˜๋ฅผ ์ผ์œผํ‚ค๋ฉฐ ์‹คํŒจํ•˜๊ธฐ๋„ ํ•ฉ๋‹ˆ๋‹ค. ๊ฐœ์„ ์ด๋•Œ, ์•„๋ž˜์™€ ๊ฐ™์€ ๋ฐฉ๋ฒ•์„ ์‹œ๋„ํ•ด๋ณผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.1. ์šฐ์„  ๋ณธ์ธ์ด ํ˜„์žฌ sudo ์ƒํƒœ๋Š” ์•„๋‹Œ์ง€ ํ™•์ธํ•ฉ๋‹ˆ๋‹ค. ์ผ๋ฐ˜ ๊ณ„์ •์œผ๋กœ ์ ‘์†ํ•œ ์ƒํƒœ์—ฌ์•ผ GUI ํ”„๋กœ๊ทธ๋žจ์„ ์ด์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ผ๋ฐ˜ ๊ณ„์ •์œผ๋กœ ํƒˆ์ถœํ•œ ๋’ค ์‹œ๋„ํ•ด๋ด…๋‹ˆ๋‹ค.2. ๊ทธ๋ž˜๋„ ์•ˆ๋œ๋‹ค๋ฉด, ์ผ๋ฐ˜ ๊ณ„์ •์ธ ์ƒํƒœ์—์„œ ์•„๋ž˜์™€ ๊ฐ™์€ ๋ช…๋ น์–ด๋ฅผ ์ณ๋ด…๋‹ˆ๋‹ค.$ xauth add :0 . `mcookie`..

MS-DOS์šฉ CD-ROM ๋“œ๋ผ์ด๋ฒ„
์—ฌ๋Ÿฌ ์œ ํ‹ธ๋ฆฌํ‹ฐ2025. 4. 9. 17:50MS-DOS์šฉ CD-ROM ๋“œ๋ผ์ด๋ฒ„

์ฐธ๊ณ : ์ฒจ๋ถ€ํŒŒ์ผ ์ˆœ์„œ๋Œ€๋กœ 720K ํ”Œ๋กœํ”ผ ์ด๋ฏธ์ง€, 1.44M ํ”Œ๋กœํ”ผ  ์ด๋ฏธ์ง€, ZIP ์••์ถ• ํŒŒ์ผ์ž…๋‹ˆ๋‹ค. ์••์ถ• ์•”ํ˜ธ 123VirtualBox ๋“ฑ ํ™˜๊ฒฝ์—์„œ MS-DOS ์„ค์น˜ ์‹œ ์ข…์ข… CD-ROM ๋“œ๋ผ์ด๋ฒ„๊ฐ€ ๋ˆ„๋ฝ๋˜๋Š” ๊ฒฝ์šฐ๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด๋ ‡๊ฒŒ ๋˜๋ฉด D:๋ฅผ ์ž…๋ ฅํ•ด๋„ "ํ•ด๋‹น ๋“œ๋ผ์ด๋ธŒ๊ฐ€ ์—†์Œ (Invalid drive specification)"์ด๋ผ๋Š” ๋ฉ”์‹œ์ง€๊ฐ€ ๋œจ๋ฉฐ ๋งˆ์šดํŠธ๋œ CD๊ฐ€ ์ธ์‹๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.์ด๋ ‡๋”๋ผ๋„ ์›ฌ๋งŒํ•ด์„œ๋Š” ํ”Œ๋กœํ”ผ ๋””์Šคํฌ ๋“œ๋ผ์ด๋ธŒ๋Š” ๋™์ž‘ํ•ฉ๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋ฏ€๋กœ ์ฒจ๋ถ€๋œ IMA ํŒŒ์ผ์„ ๋งˆ์šดํŠธํ•˜์—ฌ A:๋กœ ์ ‘๊ทผํ•œ ๋’ค ์•„๋ž˜ ๋ฐฉ๋ฒ•๋Œ€๋กœ CD-ROM ๋“œ๋ผ์ด๋ฒ„๋ฅผ ์„ค์น˜ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. 1. ๋“œ๋ผ์ด๋ฒ„๋ฅผ ์œ„ํ•œ ๋””๋ ‰ํ† ๋ฆฌ ์ƒ์„ฑC:\> MD CDDRIVER2. ๋“œ๋ผ์ด๋ฒ„ ํŒŒ์ผ์„ ์ƒˆ ๋””๋ ‰ํ† ๋ฆฌ์— ๋ณต์‚ฌA:\> COPY OAKCDROM.SYS C..

์œˆ๋„์šฐ 11 "์ฐฝ์„ ๋“œ๋ž˜๊ทธํ•  ๋•Œ๋งˆ๋‹ค ์œ„์— ๋ญ ๋œจ๋Š” ๊ทธ๊ฑฐ" ๋น„ํ™œ์„ฑํ™”ํ•˜๊ธฐ
IT/๊ธฐํƒ€2025. 4. 4. 14:01์œˆ๋„์šฐ 11 "์ฐฝ์„ ๋“œ๋ž˜๊ทธํ•  ๋•Œ๋งˆ๋‹ค ์œ„์— ๋ญ ๋œจ๋Š” ๊ทธ๊ฑฐ" ๋น„ํ™œ์„ฑํ™”ํ•˜๊ธฐ

ํ˜„์ƒ์œˆ๋„์šฐ 11์— ์˜ฌ๋ผ์˜ค๋ฉด์„œ ์ฐฝ์„ ๋Œ ๋•Œ๋งˆ๋‹ค ์˜์ƒ๊ณผ ๊ฐ™์ด ์ƒ๋‹จ ์ค‘์•™์— ๋ญ”๊ฐ€ ํ•˜๋‚˜์”ฉ ๋œจ๊ฒŒ ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ๊ทธ๋ฆฌ๊ณ  ๋งˆ์šฐ์Šค ์ปค์„œ๊ฐ€ ๊ทธ์ชฝ์œผ๋กœ ๊ฐ€๋ฉด ์ฐฝ์˜ ์‚ฌ์ด์ฆˆ, ๋ฐฐ์น˜๊ฐ€ ์ •ํ•ด์ง„ ๊ทœ์น™๋Œ€๋กœ ๋ณ€ํ•ฉ๋‹ˆ๋‹ค.์ด๋Š” ์‚ฌ์‹ค ์ตœ๊ทผ์— ๋„์ž…๋œ "์Šค๋ƒ… ๋ ˆ์ด์•„์›ƒ"์ด๋ผ๋Š” ๊ธฐ๋Šฅ์œผ๋กœ, ์œ„์— ๋ณด๋‹ค์‹œํ”ผ ์ •ํ•ด์ง„ ๋ ˆ์ด์•„์›ƒ์— ๋”ฐ๋ผ ์ฐฝ๋“ค์„ ๊ฐ€์ง€๋Ÿฐํžˆ ๋ฐฐ์—ดํ•  ์ˆ˜ ์žˆ๋Š” ๊ธฐ๋Šฅ์ž…๋‹ˆ๋‹ค. ํ•˜์ง€๋งŒ ์ด๋ฅผ ์‹ค์ œ ํ™œ์šฉํ•˜๋Š” ๊ฒฝ์šฐ๋ณด๋‹ค ์˜๋„์น˜ ์•Š์€ ๋™์ž‘์„ ์ผ์œผํ‚ค๋Š” ๊ฒฝ์šฐ๊ฐ€ ๋” ๋งŽ์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.์ด๋ฒˆ ํฌ์ŠคํŒ…์—์„œ๋Š” ์ด "์Šค๋ƒ… ๋ ˆ์ด์•„์›ƒ"์„ ๋น„ํ™œ์„ฑํ™”ํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ์•Œ์•„๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค. ๊ฐœ์„ ๋จผ์ €, PC ์„ค์ •์œผ๋กœ ๋“ค์–ด๊ฐ‘๋‹ˆ๋‹ค (์ œ์–ดํŒ ์•„๋‹™๋‹ˆ๋‹ค). ํ•œ๊ตญ์–ด ์œˆ๋„์šฐ์˜ ๊ฒฝ์šฐ ์‹œ์ž‘ ๋ฉ”๋‰ด์—์„œ "์„ค์ •"์„ ์ฐพ์œผ์‹œ๋ฉด ๋ฉ๋‹ˆ๋‹ค.์‹œ์Šคํ…œ > ๋ฉ€ํ‹ฐํƒœ์Šคํ‚น ํ•ญ๋ชฉ์œผ๋กœ ๋“ค์–ด๊ฐ‘๋‹ˆ๋‹ค.์œˆ๋„์šฐ ์Šค๋ƒ… (Snap windows) ํ•ญ๋ชฉ์˜ ๊ฐ€์žฅ ์˜ค๋ฅธ์ชฝ..

ํฌ๋ž˜ํ”„ํ†ค ์ •๊ธ€ 3์ฃผ์ฐจ WIL
๋‚˜์˜ ์ด์•ผ๊ธฐ/ํฌ๋ž˜ํ”„ํ†ค ์ •๊ธ€2025. 4. 3. 16:53ํฌ๋ž˜ํ”„ํ†ค ์ •๊ธ€ 3์ฃผ์ฐจ WIL

WIL: Weekly I Learned; ๋˜๋Š” What I Learned This Week4์›”์€ ์ •๊ธ€์˜ ๊ฑฐ์ง“๋ง์ง€๋‚œ 2์ฃผ์ฐจ WIL์„ ์™„์„ฑํ•˜๊ธฐ๊ฐ€ ๋ฌด์„ญ๊ฒŒ ์ •๊ธ€์ด ๋˜ ๋‹ค์‹œ ๋ˆˆ๋ฐญ์ด ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ์ €๋Š” ๋ˆˆ์„ ์ฐธ ์ข‹์•„ํ•˜์ง€๋งŒ, ๊ทธ๋Ÿผ์—๋„ ์ €ํฌ ๋ฐ˜ ์นœ๊ตฌ๊ฐ€ ์ด์•ผ๊ธฐํ•œ ๊ฒƒ๊ณผ ๊ฐ™์ด ์ง€๊ธˆ ์ฝ”๋”ฉ์„ ํ•  ๋•Œ๊ฐ€ ๋งž์„๊นŒ?๋ผ๋Š” ์ƒ๊ฐ์ด ๋“ค๊ธฐ๋„ ํ•˜๋Š” ์ฃผ์˜€์Šต๋‹ˆ๋‹ค. ๊ธฐํ›„ ๋ณ€ํ™”๋ž€ ์ฐธ ๋ฌด์„œ์šด ๊ฒƒ์ž…๋‹ˆ๋‹ค.๋ฐฅ๋งŒ ์ž˜ ๋จน๋”๋ผํฌ๋ž˜ํ”„ํ†ค์€ ๊ตฌ๋‚ด์‹๋‹น์ด ์•„์ฃผ ์ž˜ ๋‚˜์˜ค๋Š” ๊ฒƒ์œผ๋กœ ์ •ํ‰์ด ๋‚˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ž…์†Œ ๋‹น์‹œ ๊ทธ๊ฑธ ๋ชจ๋ฅด๋Š” ๊ฒƒ์€ ์•„๋‹ˆ์—ˆ์ง€๋งŒ, ์ œ๊ฐ€ ๊ฐ€๋Š” ๊ณณ์€ ํฌ๋ž˜ํ”„ํ†ค ๋ณธ์‚ฌ๊ฐ€ ์•„๋‹Œ ์ •๊ธ€ ์บ ํผ์Šค์ด๋‹ˆ, ์‚ฌ์‹ค ํฐ ๊ธฐ๋Œ€๋Š” ํ•˜์ง€ ์•Š์•˜์Šต๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋‚˜ ์ž…์†Œ 3์ฃผ์ฐจ๋ฅผ ๋„˜๊ธฐ๋Š” ์ด ์‹œ์ ์—์„œ ์ œ๊ฐ€ ๋‚จ๊ธธ ์ˆ˜ ์žˆ๋Š” ๋ง์€, ์—ฌ๊ธฐ ๋ฐฅ๋„ ์ƒ๋‹นํžˆ ๋ง›์žˆ๋‹ค์ž…๋‹ˆ๋‹ค. ์ž…์†Œ ์ฒซ ๋ฉฐ์น ๊ฐ„์€ ์ผ๋ถ€ ๋ฉ”๋‰ด๊ฐ€ (์ œ ์ž…๋ง›์—๋Š”) ..

ํฌ๋ž˜ํ”„ํ†ค ์ •๊ธ€ 2์ฃผ์ฐจ WIL
๋‚˜์˜ ์ด์•ผ๊ธฐ/ํฌ๋ž˜ํ”„ํ†ค ์ •๊ธ€2025. 3. 27. 22:26ํฌ๋ž˜ํ”„ํ†ค ์ •๊ธ€ 2์ฃผ์ฐจ WIL

WIL: Weekly I Learned; ๋˜๋Š” What I Learned This Week2์ฃผ์ฐจ์ž…๋‹ˆ๋‹ค. ์˜จ ์ง€ 3๊ฐœ์›”์€ ๋œ ๋“ฏํ•œ๋ฐ ํ˜„์‹ค์€ 2์ฃผ์ฐจ WIL์„ ์ž‘์„ฑํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. 2์ฃผ์ฐจ์— ์ €ํฌ๊ฐ€ ํƒํ—˜ํ•œ ๋‚ด์šฉ์€ ํฌ๊ฒŒ ์„ธ ๊ฐ€์ง€๋กœ ๋‚˜๋ˆŒ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.์ž๋ฃŒ๊ตฌ์กฐ:์Šคํƒํ์šฐ์„ ์ˆœ์œ„ ํ๋ฑ (double-ended queue)๋ฆฌ์ŠคํŠธ๋งํฌ๋“œ ๋ฆฌ์ŠคํŠธํ•ด์‹œ ํ…Œ์ด๋ธ”์•Œ๊ณ ๋ฆฌ์ฆ˜:์ด๋ถ„ํƒ์ƒ‰๋ถ„ํ• ์ •๋ณต๋งˆ์ง€๋ง‰์œผ๋กœ CS:APP ์ฑ…์—์„œ๋Š” ์ฑ•ํ„ฐ 1 (๊ฐœ์š”)์˜ ์ €์žฅ์žฅ์น˜ ๊ณ„์ธต๊ตฌ์กฐ(๋ ˆ์ง€์Šคํ„ฐ-์บ์‹œ-๋ฉ”๋ชจ๋ฆฌ-์Šคํ† ๋ฆฌ์ง€)์™€ OS์˜ ํ•˜๋“œ์›จ์–ด ๊ด€๋ฆฌ ๊ด€๋ จํ•œ ๋ถ€๋ถ„์„ ์ฝ์—ˆ์Šต๋‹ˆ๋‹ค.์Šฌ์Šฌ 2์ฃผ์ฐจ์ฏค ๋˜๋‹ˆ ๊ณต๋ถ€์˜ ํŒจํ„ด์ด ์žกํžˆ๊ธฐ ์‹œ์ž‘ํ–ˆ์Šต๋‹ˆ๋‹ค. ์‹œํ—˜์„ ์น˜๋ฅธ ๋ชฉ์š”์ผ๋ถ€ํ„ฐ ํ† ์š”์ผ๊นŒ์ง€๋Š” ์ฐจ์ฃผ ๊ฐœ๋… ์œ„์ฃผ๋กœ ๊ณต๋ถ€ํ•˜๊ณ  ๋‚œ์ด๋„ 'ํ•˜'๋‚˜ '์ค‘'์— ํ•ด๋‹นํ•˜๋Š” ๋ฌธ์ œ๋ฅผ ํ‘ผ ๋’ค, ์ผ์š”์ผ๋ถ€ํ„ฐ ์ˆ˜์š”์ผ๊นŒ์ง€ ๋ณธ๊ฒฉ์ ์ธ ๋ฌธ์ œ๋“ค์— ..

์ด๋ถ„ ํƒ์ƒ‰๊ณผ Python์˜ bisect_left
IT/์ปดํ“จํŒ…์  ์‚ฌ๊ณ 2025. 3. 27. 20:31์ด๋ถ„ ํƒ์ƒ‰๊ณผ Python์˜ bisect_left

์ด๋ถ„ ํƒ์ƒ‰(binary search)๋ž€, ์–ด๋–ค ๋ฐฐ์—ด๊ณผ ์ฐพ๊ณ ์ž ํ•˜๋Š” ์ˆ˜๊ฐ€ ์žˆ์„ ๋•Œ, ์ฐพ๊ณ ์ž ํ•˜๋Š” ๋ฒ”์œ„๋ฅผ ์ ˆ๋ฐ˜์”ฉ ์ขํ˜€๊ฐ€๋ฉฐ ๋น ๋ฅด๊ฒŒ ํ•ด๋‹น ๊ฐ’์˜ ์œ„์น˜๋ฅผ ์ฐพ์•„๋‚ด๋Š” ์•Œ๊ณ ๋ฆฌ์ฆ˜์ž…๋‹ˆ๋‹ค. ์•Œ๊ณ ๋ฆฌ์ฆ˜ ๋ฌธ์ œ์—์„œ ์ž์ฃผ ๋“ฑ์žฅํ•˜๋Š” ๋Œ€ํ‘œ์ ์ธ ํƒ์ƒ‰ ๊ธฐ๋ฒ•์œผ๋กœ, ๋‹จ์ˆœํ•œ ์ •๋ ฌ ๋ฐฐ์—ด ํƒ์ƒ‰๋ถ€ํ„ฐ, ๊ฒฝ๊ณ„๊ฐ’ ์ฐพ๊ธฐ, ์‘์šฉ ๋ฌธ์ œ๊นŒ์ง€ ๋งค์šฐ ๋‹ค์–‘ํ•œ ํ˜•ํƒœ๋กœ ์ถœ์ œ๋ฉ๋‹ˆ๋‹ค. ๋งค ๋ฐ˜๋ณต๋งˆ๋‹ค ๊ฒ€์ƒ‰ ๋ฒ”์œ„๋ฅผ ์ ˆ๋ฐ˜์œผ๋กœ ์ค„์ด๊ธฐ์— O(log n)์˜ ์‹œ๊ฐ„ ๋ณต์žก๋„๋ฅผ ๊ฐ€์ง‘๋‹ˆ๋‹ค. ๋‹ค๋งŒ, ๊ฐ’์˜ ๋Œ€์†Œ๋ฅผ ๋น„๊ตํ•˜๋ฉฐ ๋ฒ”์œ„๋ฅผ ์žก๊ธฐ์— ๋ฐฐ์—ด์ด ๋ฐ˜๋“œ์‹œ ์ •๋ ฌ๋จ์„ ์ „์ œ๋กœ ํ•ฉ๋‹ˆ๋‹ค.๊ตฌํ˜„: ๋ฐ˜๋ณต vs. ์žฌ๊ท€์ด๋ถ„ ํƒ์ƒ‰์€ ๋จผ์ € ์‹œ์ž‘ ์ธ๋ฑ์Šค์™€ ๋ ์ธ๋ฑ์Šค๋ฅผ ์žก๊ณ , ๊ทธ ๋‘˜์˜ ์ค‘๊ฐ„ (๋˜๋Š” ์•ˆ ๋‚˜๋ˆ ๋–จ์–ด์งˆ ๊ฒฝ์šฐ ํ•œ ์นธ ์™ผ์ชฝ) ์ธ๋ฑ์Šค๋ฅผ ์žก๋Š” ๊ฒƒ์œผ๋กœ ์‹œ์ž‘ํ•ฉ๋‹ˆ๋‹ค. ๊ทธ๋ฆฌ๊ณ  ์ •ํ™•ํ•œ ๊ฐ’์˜ ์ธ๋ฑ์Šค๋ฅผ ์ฐพ์„ ๋•Œ๊นŒ์ง€ ์‹œ์ž‘, ์ค‘๊ฐ„, ๋ ์ธ๋ฑ์Šค๋ฅผ..

Python ์ปดํ”„๋ฆฌํ—จ์…˜ ๋ฐ ํ‘œํ˜„์‹ ์ •๋ฆฌ
IT/์ปดํ“จํŒ…์  ์‚ฌ๊ณ 2025. 3. 27. 17:14Python ์ปดํ”„๋ฆฌํ—จ์…˜ ๋ฐ ํ‘œํ˜„์‹ ์ •๋ฆฌ

Python์œผ๋กœ ์•Œ๊ณ ๋ฆฌ์ฆ˜์„ ๊ณต๋ถ€ํ•  ๋•Œ ๋†“์น  ์ˆ˜ ์—†๋Š” ๊ฐœ๋…๋“ค ์ค‘ ํ•˜๋‚˜๊ฐ€ ๋ฐ”๋กœ ์ปดํ”„๋ฆฌํ—จ์…˜(comprehension)๊ณผ ํ‘œํ˜„์‹(expression)์ž…๋‹ˆ๋‹ค. Python์—์„œ๋Š” ๋ฐ˜๋ณต๋ฌธ๊ณผ ์กฐ๊ฑด๋ฌธ์„ ๊ฐ„๊ฒฐํ•˜๊ฒŒ ํ‘œํ˜„ํ•  ์ˆ˜ ์žˆ๋Š” list comprehension, generator expression, conditional expression(์‚ผํ•ญ ์—ฐ์‚ฐ์ž) ๋“ฑ์„ ์ œ๊ณตํ•˜์—ฌ, ์ ์ ˆํ•˜๊ฒŒ ์‚ฌ์šฉ ์‹œ ์„ฑ๋Šฅ(์‹คํ–‰์†๋„)๊ณผ ๊ฐ„๊ฒฐํ•จ์„ ๋‘˜ ๋‹ค ์žก์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.์ด๋ฒˆ ํฌ์ŠคํŠธ์—์„œ๋Š” ๊ฐ์ข… ์ปดํ”„๋ฆฌํ—จ์…˜ ๋ฐ ํ‘œํ˜„์‹์˜ ๊ฐœ๋…๊ณผ ์‚ฌ์šฉ๋ฒ•์„ ์ •๋ฆฌํ•ฉ๋‹ˆ๋‹ค.์•„์šธ๋Ÿฌ, ์ด๋“ค์— ๋žŒ๋‹ค(lambda)์‹๊นŒ์ง€ ์ ์šฉํ•œ ์˜ˆ์ œ๋„ ํ•œ๋ฒˆ ์‚ดํŽด๋ณด์‹œ๊ฒ ์Šต๋‹ˆ๋‹ค.๋ชฉ์ฐจ:1. List Comprehensions2. Set Comprehensions3. Dictionary Comprehensions4..

ํฌ๋ž˜ํ”„ํ†ค ์ •๊ธ€ 1์ฃผ์ฐจ WIL
๋‚˜์˜ ์ด์•ผ๊ธฐ/ํฌ๋ž˜ํ”„ํ†ค ์ •๊ธ€2025. 3. 20. 16:31ํฌ๋ž˜ํ”„ํ†ค ์ •๊ธ€ 1์ฃผ์ฐจ WIL

WIL: Weekly I Learned; ๋˜๋Š” What I Learned This Week์ •๊ธ€์˜ ์„ค๊ฒฝ๊ฒจ์šธ์ž…๋‹ˆ๋‹ค. ์‹œ๊ฐ„์ด ํ˜๋Ÿฌ ์ •๊ธ€ ์บ ํผ์Šค์—๋„ ์ฒซ๋ˆˆ์ด ๋‚ด๋ ธ์Šต๋‹ˆ๋‹ค.๊ฐ€ ์•„๋‹ˆ๋ผ ์„ธ์ƒ์—, 3์›”์— ์ด๋Ÿฐ ํ•จ๋ฐ•๋ˆˆ์„ ๋ณด๊ฒŒ ๋  ์ค„์€ ๋ชฐ๋ž์Šต๋‹ˆ๋‹ค. ์ด๋Ÿฐ ๊ด‘๊ฒฝ์€ 2์›” ์ค‘์ˆœ์ด์—ˆ๋˜๊ฐ€, ๋งˆ์ง€๋ง‰์œผ๋กœ ๋ดค๋˜ ๊ฒƒ ๊ฐ™์€๋ฐ, ๊ทธ๋•Œ๋งŒ ํ•ด๋„ ์ด๋Ÿฐ ๋ˆˆ์„ ๋‹ค์‹œ ๋ณด๋ ค๋ฉด ๋‚ด๋…„๊นŒ์ง€ ๊ธฐ๋‹ค๋ ค์•ผ๊ฒ ์ง€, ํ–ˆ์ง€์š”. ๋˜ ๋ณผ ์ค„์ด์•ผ! ๋„ˆ๋ฌด๋‚˜ ๋ฐ˜๊ฐ€์› ์Šต๋‹ˆ๋‹ค.์•Œ๊ณ ๋ฆฌ์ฆ˜ ์ž…๋ฌธํฌ๋ž˜ํ”„ํ†ค ์ •๊ธ€์˜ ์ƒˆ๋กœ์šด ์ฃผ(้€ฑ)์˜ ์‹œ์ž‘์€ ํ•ญ์ƒ ๋ชฉ์š”์ผ์ž…๋‹ˆ๋‹ค. ์ด์ „ ํฌ์ŠคํŠธ์—์„œ ์„ค๋ช…ํ•œ 0์ฃผ์ฐจ ๋ฏธ๋‹ˆ ํ”„๋กœ์ ํŠธ๊ฐ€ ๋๋‚˜๊ณ , ์ €ํฌ๋Š” ์ƒˆ๋กœ์šด ํŒ€์„ ๋ฐฐ์ •๋ฐ›๊ฒŒ ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ์ •๊ธ€ ์ด์™ธ์˜ ํ”„๋กœ๊ทธ๋žจ์—์„œ ๊ตฌํ•˜๊ธฐ ์–ด๋ ค์šด ๊ฒƒ ์ค‘ ํ•˜๋‚˜๊ฐ€ ๋ฐ”๋กœ ์ปดํ“จํŒ… ์ด๋ก ์— ๋Œ€ํ•œ ๋™๋ฃŒ ํ•™์Šต์ผ ๊ฒƒ์ž…๋‹ˆ๋‹ค. ์ด๋ฒˆ 1์ฃผ์ฐจ์—์„œ ์ €ํฌ๋Š” 3์ธ 1ํŒ€์œผ๋กœ ์ปค๋ฆฌํ˜๋Ÿผ์„ ..

image