[์Šคํ”„๋ง ํ•ต์‹ฌ ์›๋ฆฌ - ๊ธฐ๋ณธํŽธ] ์ข‹์€ ๊ฐ์ฒด ์ง€ํ–ฅ ํ”„๋กœ๊ทธ๋ž˜๋ฐ์ด๋ž€
ยท
์„œ๋ฒ„/Spring
๊ฐ์ฒด ์ง€ํ–ฅ ํŠน์ง• ์ถ”์ƒํ™” ์บก์Šํ™” ์ƒ์† ๋‹คํ˜•์„ฑ ๊ฐ์ฒด ์ง€ํ–ฅ ํ”„๋กœ๊ทธ๋ž˜๋ฐ ๊ฐ์ฒด ์ง€ํ–ฅ ํ”„๋กœ๊ทธ๋ž˜๋ฐ์€ ์ปดํ“จํ„ฐ ํ”„๋กœ๊ทธ๋žจ์„ ๋ช…๋ ์–ด์˜ ๋ชฉ๋ก์œผ๋กœ ๋ณด๋Š” ์‹œ๊ฐ์—์„œ ๋ฒ—์–ด๋‚˜ ์—ฌ๋Ÿฌ๊ฐœ์˜ ๋…๋ฆฝ๋œ ๋‹จ์œ„, ์ฆ‰ "๊ฐ์ฒด"๋“ค์˜ ๋ชจ์ž„์œผ๋กœ ํŒŒ์•…ํ•˜๊ณ ์ž ํ•˜๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค. ๊ฐ๊ฐ์˜ ๊ฐ์ฒด๋Š” ๋ฉ”์‹œ์ง€๋ฅผ ์ฃผ๊ณ ๋ฐ›๊ณ , ๋ฐ์ดํ„ฐ๋ฅผ ์ฒ˜๋ฆฌํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. (ํ˜‘๋ ฅ) ๊ฐ์ฒด ์ง€ํ–ฅ ํ”„๋กœ๊ทธ๋ž˜๋ฐ์€ ํ”„๋กœ๊ทธ๋žจ์„ ์œ ์—ฐํ•˜๊ณ  ๋ณ€๊ฒฝ์ด ์šฉ์ดํ•˜๊ฒŒ ๋งŒ๋“ค๊ธฐ ๋•Œ๋ฌธ์— ๋Œ€๊ทœ๋ชจ ์†Œํ”„ํŠธ์›จ์–ด ๊ฐœ๋ฐœ์— ๋งŽ์ด ์‚ฌ์šฉ๋ฉ๋‹ˆ๋‹ค. ์œ ์—ฐํ•˜๊ณ , ๋ณ€๊ฒฝ์ด ์šฉ์ด ๋ ˆ๊ณ  ๋ธ”๋Ÿญ ์กฐ๋ฆฝํ•˜๋“ฏ์ด ํ‚ค๋ณด๋“œ, ๋งˆ์šฐ์Šค ๊ฐˆ์•„ ๋ผ์šฐ๋“ฏ์ด ์ปดํ“จํ„ฐ ๋ถ€ํ’ˆ ๊ฐˆ์•„ ๋ผ์šฐ๋“ฏ์ด ์ปดํฌ๋„ŒํŠธ๋ฅผ ์‰ฝ๊ณ  ์œ ์—ฐํ•˜๊ฒŒ ๋ณ€๊ฒฝํ•˜๋ฉด์„œ ๊ฐœ๋ฐœํ•  ์ˆ˜ ์žˆ๋Š” ๋ฐฉ๋ฒ• ๋‹คํ˜•์„ฑ์˜ ์‹ค์„ธ๊ณ„ ๋น„์œ  ์‹ค์„ธ๊ณ„์™€ ๊ฐ์ฒด ์ง€ํ–ฅ์€ 1:1๋กœ ๋งค์นญ์ด ์ž˜ ์•ˆ๋จ ๊ทธ๋ž˜๋„ ์‹ค์„ธ๊ณ„์˜ ๋น„์œ ๋กœ ์ดํ•ดํ•˜๊ธฐ์—๋Š” ์ข‹์Œ ์—ญํ• ๊ณผ ๊ตฌํ˜„์œผ๋กœ ์„ธ์ƒ์„ ๊ตฌ๋ถ„ ์šด์ „์ž..
[์•Œ๊ณ ๋ฆฌ์ฆ˜][C++][DFS] ํŠน์ • ์ˆ˜ ๋งŒ๋“ค๊ธฐ (MicroSoft ์ธํ„ฐ๋ทฐ ๋ฌธ์ œ)
ยท
์•Œ๊ณ ๋ฆฌ์ฆ˜
#define _CRT_SECURE_NO_WARNINGS #include #include #include using namespace std; //๊ฒฝ๋กœ๊นŒ์ง€ ์ถœ๋ ฅํ•˜๋Š” ์ฝ”๋“œ int a[11], n, m, cnt = 0, path[10]; void DFS(int L, int sum) { if (L == n + 1) { if (sum == m) { cnt++; for (int i = 1; i < L; i++) { printf("%d ", path[i]); } puts(""); } } else { path[L] = a[L]; DFS(L + 1, sum + a[L]); path[L] = 0; DFS(L + 1, sum); path[L] = -a[L]; DFS(L + 1, sum - a[L]); } } int mai..
[Java][ํ”„๋กœ์ ํŠธ] Swing์œผ๋กœ GUI ๊ทธ๋ฆผํŒ ๋งŒ๋“ค๊ธฐ
ยท
ํ”„๋กœ์ ํŠธ
DrawingBoard_Java_Swing Java์˜ Swing์œผ๋กœ GUI ์ธํ„ฐํŽ˜์ด์Šค ๋งŒ๋“ค๊ธฐ (๊ทธ๋ฆผํŒ ๋งŒ๋“ค๊ธฐ) Library์™€ ์‘์šฉ ํ”„๋กœ๊ทธ๋žจ์„ ๋ณ„๋„์˜ ํ”„๋กœ์ ํŠธ๋กœ ๋ถ„๋ฆฌ container๋Š” ์ž๊ธฐ๊ฐ€ ๊ฐ–๊ณ ์žˆ๋Š” ๋ชจ๋“  component ๋“ค์„ paint ์‹œ์ผœ์ค€๋‹ค. ๋‹ค์–‘ํ•œ component ๊ตฌํ˜„ ๋ฐ ์‹œ์—ฐ ๊ทธ๋ฆผํŒ์˜ ๊ธฐ๋Šฅ: ์„ ๋ถ„ / ์‚ฌ๊ฐํ˜• / ํƒ€์› / ๊ทธ๋ฃนํ™” ์„ ์ƒ‰ / ์ฑ„์›€์ƒ‰ ์ด๋™ / ๋ณต์‚ฌ / ์‚ญ์ œ ํŒŒ์ผ์— ์ €์žฅ / ๋ถˆ๋Ÿฌ์˜ค๊ธฐ ๋‹ค์ด์–ด๊ทธ๋žจ (์ผ๋ถ€๋Š” ์ƒ๋žต๋˜์–ด ์žˆ์Œ) ๊ทธ๋ฆผํŒ ์‹คํ–‰ ๋ชจ์Šต Save ๋ฉ”๋‰ด๋กœ ํ˜„์žฌ Frame์˜ image๋ฅผ ํ”„๋กœ์ ํŠธ์˜ Root ๋””๋ ‰ํ† ๋ฆฌ์— ์ €์žฅ Open ๋ฉ”๋‰ด๋กœ Window์˜ dialog๋ฅผ ์—ด๊ณ  ์„ ํƒํ•œ ํŒŒ์ผ ๊ฒฝ๋กœ ์ถœ๋ ฅ
๋‚ด๊ฐ€ ์ •๋ฆฌํ•˜๋Š” ์ฝ”๋”ฉํ…Œ์ŠคํŠธ ๋ฌธ์ œ ์œ ํ˜• ๋ณ„ ํ’€์ด ๋ฐฉ๋ฒ• - ํฌ์ŠคํŒ… ์ฐธ์กฐ
ยท
์ฐธ์กฐํ• ๋งŒํ•œ ๊ณณ
https://myeongmy.tistory.com/55\ ๋‚ด๊ฐ€ ์ •๋ฆฌํ•˜๋Š” ์ฝ”๋”ฉํ…Œ์ŠคํŠธ ๋ฌธ์ œ ์œ ํ˜• ๋ณ„ ํ’€์ด ๋ฐฉ๋ฒ• ํ•˜๋ฐ˜๊ธฐ ์ฑ„์šฉ ๊ณต๊ณ ๊ฐ€ ์ ์ฐจ ๋œจ๊ธฐ ์‹œ์ž‘ํ•˜๋ฉด์„œ ์ฝ”๋”ฉํ…Œ์ŠคํŠธ๋ฅผ ์ค€๋น„ํ•˜๊ณ  ์žˆ๋Š” ๋ถ„๋“ค์ด ๋Š˜๊ณ  ์žˆ๋Š” ๊ฒƒ ๊ฐ™์•„ ๊ธ€์„ ์“ฐ๊ฒŒ ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ๋ฌผ๋ก  ์ €๋„ ๋งŽ์ด ๋ถ€์กฑํ•˜์ง€๋งŒ, ์ƒ๋ฐ˜๊ธฐ ์ฝ”๋”ฉํ…Œ์ŠคํŠธ ์ค€๋น„ํ•˜๋ฉด์„œ ์ฐธ ํž˜๋“ค์—ˆ myeongmy.tistory.com ใ„ด ์ฐธ๊ณ  ํฌ์ŠคํŒ… ๋นˆ์ถœ ์œ ํ˜• 8๊ฐ€์ง€๋ฅผ ๋งˆ์Šคํ„ฐํ•˜๋Š” ๊ฒƒ์€ ๊ธฐ๋ณธ์ด๋‹ค. (๊ตต์€ ๊ธ€์”จ๋Š” ํŠนํžˆ ๋นˆ์ถœ) ๋ธŒ๋ฃจํŠธ ํฌ์Šค (์™„์ „ํƒ์ƒ‰) DFS BFS ์‹œ๋ฎฌ๋ ˆ์ด์…˜/๊ตฌํ˜„ (๋ฌธ์ œ ํ’€์ด ๋ฐฉ๋ฒ•์€ ๋– ์˜ฌ๋ฆฌ๊ธฐ ์‰ฌ์šด๋ฐ, ์ด๋ฅผ ์†Œ์Šค์ฝ”๋“œ๋กœ ๋ณ€ํ™˜ํ•˜๋Š” ๊ฒƒ์ด ์–ด๋ ค์šด ์œ ํ˜•) DP ๊ทธ๋ฆฌ๋”” ์ด๋ถ„ํƒ์ƒ‰ ํˆฌํฌ์ธํ„ฐ ์ด ์™ธ์— ์ฃผ์š” IT๊ธฐ์—…์˜ ์ฝ”๋”ฉํ…Œ์ŠคํŠธ์˜ ํ•ฉ๊ฒฉ์„ ์— ๋“ค๊ธฐ ์œ„ํ•ด์„œ๋Š” ์šฐ์„ ์ˆœ์œ„ ํ ํ•ด์‹œ๋งต trie ์•Œ๊ณ ๋ฆฌ์ฆ˜ ์œ ๋‹ˆ์˜จ ํŒŒ์ธ๋“œ ํฌ๋ฃจ์Šค์นผ ..
[์ฐธ๊ณ ํ•  ์‚ฌ์ดํŠธ][๊น€์˜ํ•œ์˜ ์Šคํ”„๋ง ์ž…๋ฌธ]
ยท
์ฐธ์กฐํ• ๋งŒํ•œ ๊ณณ
https://smpark1020.tistory.com/253?category=857801 [์Šคํ”„๋ง ์ž…๋ฌธ] ํšŒ์› ๋ฆฌํฌ์ง€ํ† ๋ฆฌ ํ…Œ์ŠคํŠธ ์ผ€์ด์Šค ์ž‘์„ฑ ๊ฐœ๋ฐœํ•œ ๊ธฐ๋Šฅ์„ ์‹คํ–‰ํ•ด์„œ ํ…Œ์ŠคํŠธ ํ•  ๋•Œ ์ž๋ฐ”์˜ main ๋ฉ”์„œ๋“œ๋ฅผ ํ†ตํ•ด์„œ ์‹คํ–‰ํ•˜๊ฑฐ๋‚˜, ์›น ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์˜ ์ปจํŠธ๋กค๋Ÿฌ๋ฅผ ํ†ตํ•ด์„œ ํ•ด๋‹น ๊ธฐ๋Šฅ์„ ์‹คํ–‰ํ•ฉ๋‹ˆ๋‹ค. ์ด๋Ÿฌํ•œ ๋ฐฉ๋ฒ•์€ ์ค€๋น„ํ•˜๊ณ  ์‹คํ–‰ํ•˜๋Š”๋ฐ ์˜ค๋ž˜ ๊ฑธ๋ฆฌ smpark1020.tistory.com ์Šคํ”„๋ง ๊ฐ•์˜๋ฅผ ๋“ค์œผ๋ฉด์„œ ์†Œ์Šค์ฝ”๋“œ์™€, ํ•ต์‹ฌ ๋‚ด์šฉ์„ (๊ฐ•์˜์ž๋ฃŒ์—๋„ ํฌํ•จ๋˜์–ด์žˆ์ง€๋งŒ) ์ ์–ด๋‘” ๋ธ”๋กœ๊ทธ์ž…๋‹ˆ๋‹ค. ๊ฐ•์˜ ๋“ค์œผ๋ฉฐ ๊ณต๋ถ€ํ•  ๋•Œ์— ๋งค์šฐ ์œ ์šฉํ•ฉ๋‹ˆ๋‹ค!!
[C++][ํ”„๋กœ์ ํŠธ] Windows api์œผ๋กœ GUI ๊ทธ๋ฆผํŒ ๋งŒ๋“ค๊ธฐ
ยท
ํ”„๋กœ์ ํŠธ
๊ต๋‚ด์—์„œ `C++๊ณผ Windows api๋ฅผ ์ด์šฉํ•œ ๊ทธ๋ฆผํŒ` ์„ ์ฃผ์ œ๋กœ 2๋‹ฌ๊ฐ„ ํ”„๋กœ์ ํŠธ๋ฅผ ํ–ˆ์Šต๋‹ˆ๋‹ค. ๊ฐ์ฒด ์ง€ํ–ฅ ํ”„๋กœ๊ทธ๋ž˜๋ฐ์— ์ง‘์ค‘ ํ–ˆ๊ณ  ์—ฌ๋Ÿฌ๊ฐ€์ง€์˜ component์˜ ํด๋ž˜์Šค์™€ ๋ฉ”์„œ๋“œ๋ฅผ window ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ์—์„œ ๊ฐ€์ ธ๋‹ค ์“ฐ๋Š” ๊ฒƒ์ด ์•„๋‹Œ, gui๋ฅผ ์ง์ ‘ ๊ตฌํ˜„ํ–ˆ์Šต๋‹ค. composite ํŒจํ„ด / opserver ํŒจํ„ด์„ ํ™œ์šฉํ–ˆ์Šต๋‹ˆ๋‹ค. ๋‹คํ˜•์„ฑ์„ ์ ์šฉํ•˜์—ฌ ์œ ์ง€, ๋ณด์ˆ˜์— ์‹ ๊ฒฝ์ผ์Šต๋‹ˆ๋‹ค.    `๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ์™€ ์‘์šฉํ”„๋กœ๊ทธ๋žจ ๋ถ„๋ฆฌ`๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋กœ ์‚ฌ์šฉํ•  ํ”„๋กœ์ ํŠธ๋ฅผ ๋จผ์ € ๋งŒ๋“ค๊ณ , ์ด ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋ฅผ ๊ฐ–๋‹ค ์“ฐ๋Š” ์‘์šฉํ”„๋กœ๊ทธ๋žจ์œผ๋กœ ๊ทธ๋ฆผํŒ ํ”„๋กœ์ ํŠธ๋ฅผ ๋งŒ๋“ญ๋‹ˆ๋‹ค.๊ฐ ํด๋ž˜์Šค์˜ ํŠน์ง•์„ ํŒŒ์•…ํ•ด์„œ ๋‘˜ ์ค‘ ์–ด๋Š ํ”„๋กœ์ ํŠธ๋กœ ๋ฐฐ์น˜ํ• ์ง€ ๊ณ ๋ฏผํ•ด์•ผํ•ฉ๋‹ˆ๋‹ค.`์ƒ์†๊ณผ ๋‹คํ˜•์„ฑ`์ƒ์† ๊ด€๊ณ„๋ฅผ ์ž˜ ์„ค๊ณ„ํ•ด์•ผ ๋ถˆํ•„์š”ํ•œ ๋ฉค๋ฒ„๋ณ€์ˆ˜์™€ ๋ฉ”์†Œ๋“œ๋ฅผ ์ค„์ผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.์ด๋Š” clean code์—๋„..
[Java] String ํƒ€์ž…๊ณผ String Class์˜ ๋น„๊ต / == ๊ทธ๋ฆฌ๊ณ  .equals()
ยท
ํ”„๋กœ๊ทธ๋ž˜๋ฐ ์–ธ์–ด/Java
public class Hello { public static void main(String[] args) { // TODO Auto-generated method stub String s,t,r; s = "Hello"; t = "Hello"; r = new String("Hello"); System.out.println(s == t); System.out.println(s == r); System.out.println(s.equals(r)); } } Java์—์„œ ๋ฌธ์ž์—ด " ~~~ " ์„ ๋ณ€์ˆ˜์— ๋‹ด๊ธฐ ์œ„ํ•ด์„œ๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์€ ๋ฐฉ๋ฒ•์ด ์žˆ์Šต๋‹ˆ๋‹ค. ( ๋” ์žˆ์„์ˆ˜๋„.,.?) 1. String ํƒ€์ž…์˜ ๋ณ€์ˆ˜์— ์ €์žฅํ•  ์ˆ˜ ์žˆ์œผ๋ฉฐ (์ฝ”๋“œ๋ธ”๋Ÿญ์—์„œ s, r) 2. String Class๋กœ ์ƒ์„ฑํ•˜์—ฌ ๋ฉค๋ฒ„ ๋ณ€์ˆ˜์— ๋ฌธ์ž์—ด์„ ๋„ฃ์–ด์„œ..
[Java] Exception ํด๋ž˜์Šค๋กœ ์˜ˆ์™ธ ์ƒํ™ฉ ์ฒ˜๋ฆฌํ•˜๊ธฐ ์˜ˆ์ œ
ยท
ํ”„๋กœ๊ทธ๋ž˜๋ฐ ์–ธ์–ด/Java
public class ExceptionPrac { public static int divide(int a,int b) throws Exception{ if(b == 0) { throw (new Exception("Divide")); } return a/b; } public static void main(String[] args) { // TODO Auto-generated method stub try { int res; res = divide(3, 0); System.out.println(res); } catch(Exception e) { System.out.println("Error"); } } } ํ•จ์ˆ˜์˜ ๊ด€๊ณ„๊ฐ€ func1(), func2(), func3(), ,,,, ๋ณต์žกํ•ด์ง€๋Š” ๊ฒฝ์šฐ์—๋Š” ์˜ˆ์™ธ์ฒ˜๋ฆฌ๊ฐ€ ..