Banner

My Tech Blog (ETC/์ •๋ณด์ฒ˜๋ฆฌ๊ธฐ์‚ฌ)

์˜ค๋Š˜์˜ ๋ช…์–ธ
" ๊ฐ€์žฅ ์ง€ํ˜œ๋กœ์šด ์ž๋Š” ํ—ˆ์†ก์„ธ์›”์„ ๊ฐ€์žฅ ์Šฌํผํ•œ๋‹ค. "
- ๋‹จํ…Œ (์ž‘๊ฐ€, ์ดํƒˆ๋ฆฌ์•„์–ด์˜ ์•„๋ฒ„์ง€)
์ „์—ญ๋ณ€์ˆ˜#include int main() { int x = 10, y = 10; if (x > 5) { y = 20; printf("x: %d, y: %d\n", x, y); } if (x > 9) { x = 20; printf("x: %d, y: %d\n", x, y); } if (x > 10) { x = 10; y = 20; printf("x: %d, y: %d\n", x, y); } printf("x: %d, y: %d\n", x, y); return 0;}x: 10, y: 20x: 20, y: 20 x: 10, y: 20 x: 10, y: 20 ์ง€์—ญ๋ณ€์ˆ˜#incl..
1. (Java) ์•„๋ž˜ ์ฝ”๋“œ๋ฅผ ํ™•์ธํ•˜์—ฌ ์•Œ๋งž๋Š” ์ถœ๋ ฅ๊ฐ’์„ ์ž‘์„ฑํ•˜์‹œ์˜ค.public class Main{ static String[] s = new String[3]; static void func(String[]s, int size){ for(int i=1; i์ •๋‹ต: OOAAA ์ด ๋ฌธ์ œ๋Š” ๋ฌธ์ž์—ด ๋น„๊ต์—์„œ ์ž์ฃผ ๋‚˜์˜ค๋Š” equals() vs == ๊ฐœ๋…์„ ์ž˜ ์ดํ•ดํ•˜๊ณ  ์žˆ์–ด์•ผ ํ’€ ์ˆ˜ ์žˆ๋Š” ๋ฌธ์ œ์ด๋‹ค. equals()๋Š” ๋ฌธ์ž์—ด์˜ ๋‚ด์šฉ์„ ๋น„๊ตํ•˜๋ฏ€๋กœ "A"์™€ new String("A")๋„ ๊ฐ™๋‹ค๊ณ  ๋ณธ๋‹ค.๋ฐ˜๋ฉด ==๋Š” ์ฃผ์†Œ๋ฅผ ๋น„๊ตํ•˜๋ฏ€๋กœ ์ด ๊ฒฝ์šฐ false๊ฐ€ ๋  ์ˆ˜ ์žˆ๋‹ค. (์ด ์ฝ”๋“œ์—์„œ๋Š” ์‚ฌ์šฉ ์•ˆ ๋จ) static String[] s = new String[3];๊ธธ์ด 3์งœ๋ฆฌ ๋ฌธ์ž์—ด ๋ฐฐ์—ด s ์„ ์–ธํ•˜๊ธฐs[0] = "A";..
10๊ณผ 20์— ๋Œ€ํ•œ ๋น„ํŠธ ์—ฐ์‚ฐ ๊ฒฐ๊ณผ๋ฅผ ์ •๋ฆฌ ํ•ด ๋ณธ๋‹ค. ์šฐ์„  ์ด์ง„์ˆ˜๋กœ ๋ณ€ํ™˜ํ•œ ๋’ค ์—ฐ์‚ฐ์„ ์ˆ˜ํ–‰ํ•œ๋‹ค.10 = 0000101020 = 00010100 ๐Ÿงฎ ๋น„ํŠธ ์—ฐ์‚ฐ ๊ฒฐ๊ณผ์—ฐ์‚ฐ์‹๊ฒฐ๊ณผ(์ด์ง„์ˆ˜)๊ฒฐ๊ณผ(์‹ญ์ง„์ˆ˜) - ์ฝ˜์†”AND (&)10 & 20000000000OR (`)10 | 200001111030XOR (^)10 ^ 200001111030NOT (~10)~1011110101 (8๋น„ํŠธ ๊ธฐ์ค€)-11์™ผ์ชฝ ์‹œํ”„ํŠธ (10 0001010020์˜ค๋ฅธ์ชฝ ์‹œํ”„ํŠธ (>>)20 >> 10000101010 ๐Ÿ’ก ์ฐธ๊ณ || โ† ์ด๊ฑด ๋…ผ๋ฆฌ OR (logical OR) ์—ฐ์‚ฐ์ž (C, Java ๋“ฑ์—์„œ ์‚ฌ์šฉ)| โ† ์ด๊ฑด ๋น„ํŠธ OR (bitwise OR) ์—ฐ์‚ฐ์ž (Python, C, Java ๋“ฑ์—์„œ ์‚ฌ์šฉ)  โœ… 1. AND ์—ฐ์‚ฐ (&)๋น„ํŠธ๋ผ๋ฆฌ AND ..
โ–ถ ์ •๋ณด ์ „์†ก ๋ฐฉ์‹ - ๋‹จ๋ฐฉํ–ฅ : ํ•œ์ชฝ ๋ฐฉํ–ฅ์œผ๋กœ๋งŒ ์ „์†ก ๊ฐ€๋Šฅ (TV, ๋ผ๋””์˜ค)  - ๋ฐ˜์ด์ค‘ : ํ•œ์ชฝ์—์„œ ์†ก์‹ ํ•˜๋ฉด ๋‹ค๋ฅธ ์ชฝ์—์„œ๋Š” ์ˆ˜์‹ ๋งŒ ๊ฐ€๋Šฅ (๋ฌด์ „๊ธฐ) - ์ „์ด์ค‘ : ๋™์‹œ์— ์†ก/์ˆ˜์‹  ๊ฐ€๋Šฅ (์ „ํ™”๊ธฐ)    โ–ถ  ๋„คํŠธ์›Œํฌ ํ† ํด๋กœ์ง€: ๋…ธ๋“œ์™€ ๋งํฌ์˜ ๊ตฌ์„ฑ ๋ฐฉ์‹ โ–  ์Šคํƒ€ํ˜•/์„ฑํ˜• = ์ค‘์•™์ง‘์ค‘ํ˜•- ์ค‘์•™๋…ธ๋“œ์™€  1:1 (P2P) ์—ฐ๊ฒฐ - ๊ณ ์žฅ ๋ฐœ๊ฒฌ, ์œ ์ง€ ๋ณด์ˆ˜, ํ™•์žฅ์ด ์‰ฌ์›€- ์ค‘์•™ ๋…ธ๋“œ์˜ ์ œ์–ด ์žฅ์น˜๊ฐ€ ํ†ต์‹ ๋ง์˜ ์ฒ˜๋ฆฌ ๋Šฅ๋ ฅ, ์‹ ๋ขฐ์„ฑ ๊ฒฐ์ • โ–  ๋ฒ„์Šคํ˜•- ํ•œ ๊ฐœ์˜ ํšŒ์„ ์— ์—ฌ๋Ÿฌ ๋‹จ๋ง ์žฅ์น˜ ์—ฐ๊ฒฐ, ํšŒ์„  ์–‘ ๋ ์ข…๋‹จ์žฅ์น˜ ํ•„์š”- ๋‹จ๋ง ํ•˜๋‚˜๊ฐ€ ๊ณ ์žฅ๋‚˜๋„ ์ „์ฒด ์˜ํ–ฅ ์—†๊ธฐ์— ์‹ ๋ขฐ์„ฑ ๋†’์Œ- ์„ค์น˜/์ œ๊ฑฐ ์šฉ์ด, ๊ธฐ๋ฐ€์„ฑ ๋‚ฎ๊ณ  ํ†ต์‹  ํšŒ์„ ์˜ ์ œํ•œ์ด ์žˆ์Œ โ–  ๋ง/๋ฃจํ”„ = ์›/ํ™˜ํ˜•- ์ธ์ ‘ํ•œ ๋‹จ๋ง๊ธฐ๋ฅผ ์„œ๋กœ ์—ฐ๊ฒฐ / ์–‘๋ฐฉํ–ฅ ์ „์†ก ๊ฐ€๋Šฅ- ํ†ต์‹ ๋ง ํ•˜๋‚˜๊ฐ€ ๊ณ ์žฅ ์‹œ ..
โ–ถ ์šด์˜์ฒด์ œ ์ข…๋ฅ˜์œˆ๋„์šฐ (Windows) : ๋งˆ์ดํฌ๋กœ์†Œํ”„ํŠธ์‚ฌ์—์„œ ๊ฐœ๋ฐœํ•œ ์šด์˜์ฒด์ œ์œ ๋‹‰์Šค (Unix)  : ๋ฏธ๊ตญ AT&T ๋ฒจ ์—ฐ๊ตฌ์†Œ์—์„œ ๊ฐœ๋ฐœํ•œ ์šด์˜์ฒด์ œ โ†’ ์ปค๋„(Kernel) / ์‰˜(Shell) ๋กœ ๊ตฌ์„ฑ๋ฆฌ๋ˆ…์Šค (Linux) : ๋ฆฌ๋ˆ„์Šค ํ† ๋ฐœ์ฆˆ๊ฐ€ ์œ ๋‹‰์Šค๋ฅผ ๊ธฐ๋ฐ˜์œผ๋กœ ๊ฐœ๋ฐœํ•œ ์šด์˜์ฒด์ œMacOS / iOS : ์• ํ”Œ์ด ์œ ๋‹‰์Šค ๊ธฐ๋ฐ˜์œผ๋กœ ๊ฐœ๋ฐœํ•œ ์šด์˜์ฒด์ œAndroid : ๊ตฌ๊ธ€์ด ๋ฆฌ๋ˆ…์Šค ์ปค๋„ ๊ธฐ๋ฐ˜์œผ๋กœ ๊ฐœ๋ฐœํ•œ ๊ฐœ๋ฐฉํ˜• ๋ชจ๋ฐ”์ผ ์šด์˜์ฒด์ œ   โ–ถ UNIX ๊ตฌ์„ฑ ์š”์†Œ โ–  ์ปค๋„ (Kernel) ํ•˜๋“œ์›จ์–ด ๋ณดํ˜ธ / ํ”„๋กœ๊ทธ๋žจ ๋ฐ ํ•˜๋“œ์›จ์–ด ๊ฐ„ ์ธํ„ฐํŽ˜์ด์Šค ์—ญํ• ํ”„๋กœ์„ธ์Šค ๊ด€๋ฆฌ, ๊ธฐ์–ต์žฅ์น˜ ๊ด€๋ฆฌ, ํŒŒ์ผ ๊ด€๋ฆฌ, ์ž…์ถœ๋ ฅ ๊ด€๋ฆฌ, ๋ฐ์ดํ„ฐ ์ „์†ก ๋ฐ ๋ณ€ํ™˜, ์‰˜ ํ”„๋กœ๊ทธ๋žจ ์‹คํ–‰์„ ์œ„ํ•œ ํ”„๋กœ์„ธ์Šค ๋ฐ ๋ฉ”๋ชจ๋ฆฌ ๊ด€๋ฆฌ โ–  ์‰˜ (Shell)์‚ฌ์šฉ์ž์˜ ๋ช…๋ น ์ธ์‹ / ํ•ด์„ ํ›„ ์ปค๋„๋กœ ..
1. ์„ ์ (Preemptive) ์Šค์ผ€์ค„๋ง์‹คํ–‰ ์ค‘์ธ ํ”„๋กœ์„ธ์Šค๋ฅผ ์ค‘๋‹จํ•˜๊ณ ,๋” ์šฐ์„ ์ˆœ์œ„๊ฐ€ ๋†’์€ ๋‹ค๋ฅธ ํ”„๋กœ์„ธ์Šค์—๊ฒŒ CPU๋ฅผ ์–‘๋ณด ๊ฐ€๋Šฅ. ๐Ÿ“Œ ์„ ์  ์Šค์ผ€์ค„๋ง ์•Œ๊ณ ๋ฆฌ์ฆ˜๐Ÿ”น Round Robin : ์‹œ๊ฐ„ ํ• ๋‹น๋Ÿ‰(Time Quantum) ์ง€๋‚˜๋ฉด ๋‹ค์Œ ํ”„๋กœ์„ธ์Šค๋กœ ๊ต์ฒด ๐Ÿ”น SRTF (Shortest Remaining Time First) : ๋‚จ์€ ์‹œ๊ฐ„์ด ๋” ์งง์€ ์ƒˆ ์ž‘์—…์ด ์˜ค๋ฉด ํ˜„์žฌ ์ž‘์—… ์ค‘๋‹จ ๐Ÿ”น ์„ ์ ํ˜• ์šฐ์„ ์ˆœ์œ„(Priority Scheduling) : ๋” ๋†’์€ ์šฐ์„ ์ˆœ์œ„์˜ ํ”„๋กœ์„ธ์Šค๊ฐ€ ๋„์ฐฉํ•˜๋ฉด ์ค‘๋‹จ๋จ 2. ๋น„์„ ์ (Non-preemptive) ์Šค์ผ€์ค„๋งํ•œ ๋ฒˆ ์‹คํ–‰๋œ ํ”„๋กœ์„ธ์Šค๋Š” ๋๋‚  ๋•Œ๊นŒ์ง€ CPU๋ฅผ ์ ์œ ํ•œ๋‹ค. ๊ทธ๋ž˜์„œ ์ƒˆ๋กœ ๋„์ฐฉํ•œ ํ”„๋กœ์„ธ์Šค๋Š” ๋Œ€๊ธฐํ•ด์•ผ ํ•œ๋‹ค.์ค‘์š”ํ•œ ์ž‘์—…์ด ๊ธธ๋ฉด, ๋’ค์— ์žˆ๋Š” ์งง์€ ์ž‘์—…์ด ์˜ค๋ž˜ ๊ธฐ๋‹ค๋ฆด ์ˆ˜ ์žˆ๊ธฐ ๋•Œ๋ฌธ์—..
SQL (Strunctured Query Language) ๋ถ„๋ฅ˜ โ‘  ๋ฐ์ดํ„ฐ ์ •์˜์–ด (DDL: Data Definition Language)โ†’ ๋…ผ๋ฆฌ/๋ฌผ๋ฆฌ์  ๋ฐ์ดํ„ฐ ๊ตฌ์กฐ ์ •์˜CREATE (์ƒ์„ฑ)CREATE DOMAIN / SCHEMA / TABLE / VIEW / INDEX โ†’ ์ƒ์„ฑALTER (๋ณ€๊ฒฝ)TABLE ์ด๋ฆ„ ๋ณ€๊ฒฝ โ†’ ALTER TABLE / ์ปฌ๋Ÿผ ์ถ”๊ฐ€DROP (์‚ญ์ œ)DROP DOMAIN / SCHEMA / TABLE / VIEW / INDEX โ†’ ์‚ญ์ œ* CASCADE : ์ฐธ์กฐํ•˜๋Š” ๋ชจ๋“  ๊ฐœ์ฒด ํ•จ๊ป˜ ์ œ๊ฑฐ* RESTRICTED : ์ œ๊ฑฐํ•  ์š”์†Œ๋ฅผ ๋‹ค๋ฅธ ๊ฐœ์ฒด๊ฐ€ ์ฐธ์กฐ ์‹œ ์ œ๊ฑฐ ์ทจ์†Œ  โ‘ก ๋ฐ์ดํ„ฐ ์กฐ์ž‘์–ด (DML : Data MAnipulation Language)SELECT (๊ฒ€์ƒ‰)SELECT FROM ํ…Œ์ด๋ธ”๋ช… ..
27๋ฒˆ_ ํ•จ์ˆ˜ ํ˜ธ์ถœ ์‹œ ๋งค๊ฐœ๋ณ€์ˆ˜๋กœ ๋ฆฌ์ŠคํŠธ๋ฅผ ๋ฐ›๋Š” ๋ฌธ์ œโœ… ์ •๋‹ต: [1, 2] ๐Ÿ’ก y=[]๋Š” ํ•จ์ˆ˜ ํ˜ธ์ถœ ์‹œ ๋งค๋ฒˆ ์ƒˆ๋กœ์šด ๋ฆฌ์ŠคํŠธ๋ฅผ ์ƒ์„ฑํ•˜์ง€ ์•Š๊ณ , ๊ธฐ์กด ๋ฆฌ์ŠคํŠธ๋ฅผ ๊ณต์œ ํ•˜๊ธฐ ๋•Œ๋ฌธ์—, ์˜ˆ์ƒ๊ณผ ๋‹ค๋ฅด๊ฒŒ ๊ฐ’์ด ๊ณ„์† ์ถ”๊ฐ€๋œ๋‹ค. ์ฆ‰, ๋ฆฌ์ŠคํŠธ๋ฅผ ๊ธฐ๋ณธ ์ธ์ž๋กœ ์‚ฌ์šฉํ•˜๋ฉด ์ด์ „ ํ˜ธ์ถœ์˜ ๊ฐ’์ด ๋ˆ„์ ๋œ๋‹ค.  28๋ฒˆ_ ๋ฌธ์ž์—ด ๋ฆฌ์ŠคํŠธ ์ˆœํšŒ๋‹ค์Œ ํ•จ์ˆ˜์˜ ์‹คํ–‰ ๊ฒฐ๊ณผ๋Š”?class Arr: a = ['Seoul', 'Kyeonggi', 'Inchon', 'Daejoen', 'Daegu', 'Busan'] s = '' # ๋ฌธ์ž์—ด ์ดˆ๊ธฐํ™” for i in Arr.a: # ์˜ฌ๋ฐ”๋ฅธ for๋ฌธ ๋ฌธ๋ฒ• s += i[0] # ๊ฐ ๋‹จ์–ด์˜ ์ฒซ ๊ธ€์ž๋งŒ ์ถ”๊ฐ€ print(s)โœ… ์ •๋‹ต: SKIDDB (๊ฐ ๋„์‹œ ์ด๋ฆ„์˜ ์ฒซ ๊ธ€์ž๋ฅผ ์กฐํ•ฉํ•œ ๊ฒฐ๊ณผ)๐Ÿ’ก A..
์ƒ๋‹จ์œผ๋กœ