์ „์ฒด ๊ธ€

์ „์ฒด ๊ธ€

    ์•ฝ์ˆ˜

    ์•ฝ์ˆ˜

    ์•ฝ์ˆ˜๋ฅผ ๊ตฌํ•˜๋Š” ๋ฐฉ๋ฒ• 1. 1๋ถ€ํ„ฐ n๊นŒ์ง€ %์—ฐ์‚ฐ์„ ํ™œ์šฉํ•˜์—ฌ ๊ตฌํ•˜๊ธฐ 2. 1๋ถ€ํ„ฐ ๋ฃจํŠธn๊นŒ์ง€ %์—ฐ์‚ฐ์„ ํ™œ์šฉํ•˜์—ฌ ๊ตฌํ•˜๊ธฐ ๋ฃจํŠธn๊นŒ์ง€๋งŒ ๋น„๊ตํ•ด๋„ ๋˜๋Š” ์ด์œ ๋Š” ์•ฝ์ˆ˜๋Š” ์ง์„ ์ง€์–ด ์žˆ๊ธฐ ๋•Œ๋ฌธ์ด๋‹ค. ์•ฝ์ˆ˜์˜ ๊ฐœ์ˆ˜๊ฐ€ ํ™€์ˆ˜์ผ ๊ฒฝ์šฐ root๋ฅผ ์”Œ์–ด์ค€ ๊ฐ’์ด ์•ฝ์ˆ˜๊ฐ€ ๋œ๋‹ค.(๋ฃจํŠธn๊นŒ์ง€ ํ™•์ธํ•ด์•ผํ•œ๋‹ค.) ์‹œ๊ฐ„๋ณต์žก๋„ 1๋ฒˆ ๋ฐฉ๋ฒ• : O(n) 2๋ฒˆ ๋ฐฉ๋ฒ• : O(√n) // 1๋ฒˆ ๋ฐฉ๋ฒ• O(n) int n = 121; for(int i = 1; i

    ์ˆ˜ํ•™ - Mod์—ฐ์‚ฐ

    ์ˆ˜ํ•™ - Mod์—ฐ์‚ฐ

    Mod ์—ฐ์‚ฐ ๋‚˜๋จธ์ง€ ์—ฐ์‚ฐ์˜ ํŠน์ง• (A + B) % C == ((A % C) + (B % C)) % C (A * B) % C == ((A % C) * (B % C)) % C (A - B) % C == ((A % C) - (B % C) + C) % C ๋‚˜๋ˆ„๊ธฐ ์—ฐ์‚ฐ์„ ์ œ์™ธํ•˜๊ณ ๋Š” ๋ถ„๋ฐฐ๋ฒ•์น™ ์ฒ˜๋Ÿผ Mod๋ฅผ ์ฒ˜๋ฆฌํ•˜๊ณ  ์‚ฌ์šฉ ๊ฐ€๋Šฅํ•˜๋‹ค. (์ฃผ์˜์‚ฌํ•ญ) '-' ์—ฐ์‚ฐ์ผ ๊ฒฝ์šฐ ๋ฒ”์œ„๋Š” -C

    ์Šคํ”„๋ง ๋นˆ ๋“ฑ๋ก๋ฐฉ๋ฒ•๊ณผ ์‚ฌ์šฉ์˜ˆ์‹œ

    ์Šคํ”„๋ง ๋นˆ ๋“ฑ๋ก๋ฐฉ๋ฒ•๊ณผ ์‚ฌ์šฉ์˜ˆ์‹œ

    Spring Bean์ด๋ž€? Spring์˜ Bean์€ Spring IOC Container๊ฐ€ ๊ด€๋ฆฌํ•˜๋Š” ๊ฐ์ฒด๋“ค์„ ์˜๋ฏธํ•ฉ๋‹ˆ๋‹ค. ๋”ฐ๋กœ new ์—ฐ์‚ฐ์„ ํ†ตํ•ด ๊ฐ์ฒด๋ฅผ ์ƒ์„ฑํ•˜์ง€ ์•Š์•„๋„ ๋˜๊ณ , Spring IOC Container์—๊ฒŒ ์•Œ๋ ค์ฃผ๊ธฐ๋งŒ ํ•˜๋ฉด ๊ฐ์ฒด๋ฅผ ๋งŒ๋“ค์–ด ์‚ฌ์šฉํ•ด ์ค๋‹ˆ๋‹ค. Spring Bean์„ ์‚ฌ์šฉํ•˜๋ฉด ์—ฌ๋Ÿฌ ํด๋ž˜์Šค์—์„œ ๋”ฐ๋กœ new์—ฐ์‚ฐ์„ ํ•˜์—ฌ ๋™์ผํ•œ ์—ฌ๋Ÿฌ ๊ฐ์ฒด๋ฅผ ๋งŒ๋“ค ํ•„์š”๋„ ์—†์–ด ๋ฉ”๋ชจ๋ฆฌ ํ™œ์šฉ์— ํšจ๊ณผ์ ์ž…๋‹ˆ๋‹ค. Spring IOC Container์—์„œ ๊ฐ€์ง€๊ณ  ์žˆ๋Š” ๋™์ผํ•œ ์ธ์Šคํ„ด์Šค๋งŒ ์‚ฌ์šฉํ•˜๊ธฐ ๋•Œ๋ฌธ์— ๋งŽ์€ ์ด์ ์„ ์–ป์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๊ทธ๋ ‡๋‹ค๋ฉด ์ด๋ฒˆ ์‹œ๊ฐ„์—๋Š” Spring Bean์— ๋“ฑ๋กํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ์•Œ์•„๋ณด๋„๋ก ํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค. Spring Bean ๋“ฑ๋ก ๋ฐฉ๋ฒ•? ๋“ฑ๋กํ•˜๋Š” ๋ฐฉ๋ฒ•์€ ํฌ๊ฒŒ ๋‘๊ฐ€์ง€๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค. Component Scan ์ง..

    Test Case ๋งŒ๋“ค๊ธฐ

    Test Case ๋งŒ๋“ค๊ธฐ

    ์ด๋ฒˆ ํฌ์ŠคํŒ…์—์„œ๋Š” ์„œ๋น„์Šค๋ฅผ ์ƒ์„ฑํ•˜๊ณ , ๋™์ž‘์ด ์›ํ™œํžˆ ์ˆ˜ํ–‰๋˜๋Š”์ง€ ํ…Œ์ŠคํŠธ๋ฅผ ํ•ด์•ผํ•ฉ๋‹ˆ๋‹ค. main ๋ฉ”์†Œ๋“œ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์ถœ๋ ฅํ•˜๊ธฐ ์ง์ ‘ DB์— ๋„ฃ๊ณ  ์‹คํ–‰ํ•ด๋ณด๊ธฐ ๋“ฑ๋“ฑ ๋‹ค์–‘ํ•œ ๋ฐฉ๋ฒ•์œผ๋กœ ํ…Œ์ŠคํŠธ๋ฅผ ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด๋ฒˆ ์‹œ๊ฐ„์—๋Š” Spring์œผ๋กœ Service๋ฅผ ๋งŒ๋“ค๋ฉฐ ๊ต‰์žฅํžˆ ํŽธ๋ฆฌํ•œ Test Case๋ฅผ ํ™œ์šฉํ•˜์—ฌ ํ…Œ์ŠคํŠธ๋ฅผ ์ˆ˜ํ–‰ํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ์•Œ์•„๋ณด๋„๋ก ํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค. Test Case testํŒŒ์ผ์—์„œ Class๋ฅผ ์ƒ์„ฑํ•˜์—ฌ ์ฃผ์‹œ๊ณ  ์ž‘์—…์„ ์ˆ˜ํ–‰ํ•˜๋ฉด ๋ฉ๋‹ˆ๋‹ค. ๋ฉ”์†Œ๋“œ์— @Test๋ผ๋Š” anotation๋งŒ ๋ถ™์—ฌ์ฃผ๊ณ  ์‚ฌ์šฉํ•˜๋ฉด ๋ฉ๋‹ˆ๋‹ค. ์˜ˆ์‹œ๋กœ ๊ฐ„๋‹จํ•œ ์ŠคํŽ™์˜ ์„œ๋น„์Šค๋ฅผ ๋งŒ๋“ค์–ด๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค. public int join(Member member) { nameCheck(member); repository.save(member); return member.g..