[๋‹จ์ถ•ํ‚ค] ์ธํ…”๋ฆฌ์ œ์ด(IntelliJ)
ยท
๐Ÿ”‘๋‹จ์ถ•ํ‚ค
https://www.jetbrains.com/ko-kr/idea/ IntelliJ IDEA – Java ๋ฐ Kotlin์„ ์œ„ํ•œ ์ตœ๊ณ ์˜ IDE www.jetbrains.com 1๏ธโƒฃ ๊ธฐ๋ณธ ํŽธ์ง‘`Ctrl + X` : ํ–‰ ์‚ญ์ œ (๋นˆ ์„ ํƒ)`Ctrl + C` : ํ–‰ ๋ณต์‚ฌ (๋นˆ ์„ ํƒ)`Ctrl + D` : ํ–‰ ๋ณต์ œ`Ctrl + Y` : ํ–‰ ์‚ญ์ œ`Ctrl + Enter` : ์•„๋ž˜์— ํ–‰ ์‚ฝ์ž…`Shift + Enter` : ์œ„์— ํ–‰ ์‚ฝ์ž…`Shift + Alt + (↑,↓)` : ํ–‰ ์ด๋™`Ctrl + Shift + J` : ๋‹ค์Œ ํ–‰๊ณผ ๋ณ‘ํ•ฉ`Ctrl + /` : ํ–‰ ์ฃผ์„ ํ† ๊ธ€`Ctrl + Shift + /` : ๋ธ”๋ก ์ฃผ์„ ํ† ๊ธ€`Ctrl + W` : ์„ ํƒ ์˜์—ญ ํ™•์žฅ `Ctrl + Shift + W` : ์„ ํƒ ์˜์—ญ ์ถ•์†Œ`C..
[๋ชฉ์ฐจ] ๋ฆฌ์•กํŠธ๋ฅผ ๋‹ค๋ฃจ๋Š” ๊ธฐ์ˆ (๊ฐœ์ •ํŒ)
ยท
๐ŸงฉFront-End
https://product.kyobobook.co.kr/detail/S000001792882 ๋ฆฌ์•กํŠธ๋ฅผ ๋‹ค๋ฃจ๋Š” ๊ธฐ์ˆ  | ๊น€๋ฏผ์ค€ - ๊ต๋ณด๋ฌธ๊ณ ๋ฆฌ์•กํŠธ๋ฅผ ๋‹ค๋ฃจ๋Š” ๊ธฐ์ˆ  | ๋ณธ๋ฌธ๊ณผ ์†Œ์Šค ์ „๋ฉด ์—…๊ทธ๋ ˆ์ด๋“œ! ๊ธฐ๋ณธ๊ธฐ๋ฅผ ๊ผผ๊ผผํ•˜๊ฒŒ! ์‹ค์ „์—์„œ ํšจ๊ณผ์ ์œผ๋กœ ํ™œ์šฉํ•˜๋Š” ๋ฐฉ๋ฒ•๊นŒ์ง€ ์•Œ์ฐจ๊ฒŒ ๋ฐฐ์šฐ์ž! ๊ฐœ์ •ํŒ์ด ๋‚˜์™”์Šต๋‹ˆ๋‹ค. ๋ฆฌ์•กํŠธ 16.8 ๋ฒ„์ „์— Hooks๋ผ๋Š” ๊ธฐ๋Šฅ์ด ๋„product.kyobobook.co.kr28์žฅ์„ ์ž„์˜๋กœ 8๊ฐœ ํŒŒํŠธ๋กœ ๋‚˜๋ˆ„์—ˆ์Šต๋‹ˆ๋‹ค๐Ÿ™‚ 1๏ธโƒฃ ๋ฆฌ์•กํŠธ ๊ธฐ๋ณธ ๋ฐ JSXโœ”๏ธ1์žฅ ๋ฆฌ์•กํŠธ ์‹œ์ž‘__1.1 ์™œ ๋ฆฌ์•กํŠธ์ธ๊ฐ€?____1.1.1 ๋ฆฌ์•กํŠธ ์ดํ•ด__1.2 ๋ฆฌ์•กํŠธ์˜ ํŠน์ง•____1.2.1 Virtual DOM____1.2.2 ๊ธฐํƒ€ ํŠน์ง•__1.3 ์ž‘์—… ํ™˜๊ฒฝ ์„ค์ •____1.3.1 Node.js์™€ npm____1.3.2 yarn____1.3..
[React] ๋ฆฌ์•กํŠธ ๊ฐœ์š” ๋ฐ ํ™˜๊ฒฝ์„ค์ • ๊ฐ€์ด๋“œ
ยท
๐ŸงฉFront-End
https://ko.react.dev/ ReactReact is the library for web and native user interfaces. Build user interfaces out of individual pieces called components written in JavaScript. React is designed to let you seamlessly combine components written by independent people, teams, and organizatiko.react.dev  ๐Ÿ’ก๋ฆฌ์•กํŠธ(React)๋ž€?๋ฆฌ์•กํŠธ(React)๋Š” ํŽ˜์ด์Šค๋ถ์—์„œ ๊ฐœ๋ฐœํ•œ ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋กœ, ์‚ฌ์šฉ์ž ์ธํ„ฐํŽ˜์ด์Šค(UI)๋ฅผ ๊ตฌ์ถ•ํ•˜๊ธฐ ์œ„ํ•ด ์‚ฌ์šฉ๋ฉ๋‹ˆ๋‹ค. ๋ฆฌ์•กํŠธ๋Š” MVC(Model-View..
2021~2023 ๊ณ ์šฉ๋…ธ๋™๋ถ€ ์ฃผ๊ด€ K-๋””์ง€ํ„ธ ํŠธ๋ ˆ์ด๋‹ ํ•ด์ปคํ†ค ์—ญ๋Œ€ ์ˆ˜์ƒ์ž‘
ยท
๐Ÿ”๊ธฐํƒ€
๐Ÿ’ก2024๋…„ ์ œ6ํšŒ K-๋””์ง€ํ„ธ ํŠธ๋ ˆ์ด๋‹ ํ•ด์ปคํ†คโœ”๏ธ์ฃผ์ œ์ง€์ •๊ณผ์ œ : ์ €์ถœ์‚ฐ · ๊ณ ๋ น์‚ฌํšŒ์— ํ•„์š”ํ•œ ์ฒจ๋‹จ · ๋””์ง€ํ„ธ ์„œ๋น„์Šค ๊ฐœ๋ฐœ์ž์œ ๊ณผ์ œ : ์ฒจ๋‹จ · ๋””์ง€ํ„ธ ๊ธฐ์ˆ ์„ ํ™œ์šฉํ•œ ์„œ๋น„์Šค ๊ฐœ๋ฐœโœ”๏ธ์ฐธ๊ฐ€ ๋Œ€์ƒK-๋””์ง€ํ„ธ ํŠธ๋ ˆ์ด๋‹ ํ›ˆ๋ จ์ƒ ๋˜๋Š” ์ˆ˜๋ฃŒ์ƒ์œผ๋กœ ๊ตฌ์„ฑ๋œ ํŒ€ (ํŒ€๋‹น 3๋ช…~6๋ช…)โœ”๏ธ์ ‘์ˆ˜ ๊ธฐ๊ฐ„2024. 8. 19 (์›”) - 9. 6 (๊ธˆ) 12:00 ๋งˆ๊ฐโœ”๏ธ์‚ฌ์ดํŠธhttp://k-digitalhackathon.kr/ 2024๋…„ K-๋””์ง€ํ„ธ ํŠธ๋ ˆ์ด๋‹ ํ•ด์ปคํ†คK-๋””์ง€ํ„ธ ํŠธ๋ ˆ์ด๋‹ ํ•ด์ปคํ†ค ๋Œ€ํšŒ๋Š” KDT ํ›ˆ๋ จ์ƒ ๋˜๋Š” ์ˆ˜๋ฃŒ์ƒ์˜ ์—ญ๋Ÿ‰์„ ๋ฐœํœ˜ํ•˜๊ณ  ์ฐฝ์˜์  ์œตํ•ฉ ์‚ฌ๊ณ ๋ฅผ ๊ฐœ๋ฐœํ•˜๊ธฐ ์œ„ํ•œ ๋Œ€ํšŒ์ž…๋‹ˆ๋‹ค.k-digitalhackathon.kr  ๐Ÿ’ก์—ญ๋Œ€ ๋Œ€์ƒ์ž‘โœ”๏ธ์ œ1ํšŒ(2021๋…„)์ฃผ์ œ : ๋‹ค์–‘ํ•œ ๊ธฐ์ˆ ๊ณผ ์ธํ”„๋ผ ์œตํ•ฉ์„ ์š”๊ตฌํ•˜๋Š” ๋””์ง€ํ„ธ ์œต๋ณตํ•ฉ์‹œ๋Œ€์— ์ ํ•ฉํ•œ ์ƒˆ๋กœ์šด..
[๋‹จ์ถ•ํ‚ค] VSCode(Visual Studio Code)
ยท
๐Ÿ”‘๋‹จ์ถ•ํ‚ค
https://code.visualstudio.com/https://demun.github.io/vscode-tutorial/shortcuts/https://code.visualstudio.com/shortcuts/keyboard-shortcuts-windows.pdf  ๐Ÿ’ก ๋‹จ์ถ•ํ‚ค1๏ธโƒฃ ๊ธฐ๋ณธ ํŽธ์ง‘`Ctrl + X` : ํ–‰ ์‚ญ์ œ (๋นˆ ์„ ํƒ)`Ctrl + C` : ํ–‰ ๋ณต์‚ฌ (๋นˆ ์„ ํƒ)`Ctrl + Shift + K` : ํ–‰ ์‚ญ์ œ`Ctrl + Enter` : ์•„๋ž˜์— ํ–‰ ์‚ฝ์ž…`Ctrl + Shift + Enter` : ์œ„์— ํ–‰ ์‚ฝ์ž…`Alt + (↑,↓)` : ํ–‰ ์ด๋™`Shift + Alt + (↑,↓)` : ํ–‰ ๋ณต์ œ`Ctrl + D` : ๋‹ค์Œ ์„ ํƒ ์ฐพ๊ธฐ`Ctrl + F2`, `Ctrl + Shift + L` ..
[SQL] ๊ณ„์ธตํ˜• ์งˆ์˜(START WITH, CONNECT BY, PRIOR, LEVEL)
ยท
๐ŸŽฒDB_SQL
๐Ÿ“Œ ๊ณ„์ธตํ˜• ์งˆ์˜(Hierarchical Query)๋ž€?SQL์—์„œ ํ…Œ์ด๋ธ” ๋‚ด์— ๊ณ„์ธต ๊ตฌ์กฐ๋ฅผ ํ‘œํ˜„ํ•  ๋•Œ ์‚ฌ์šฉํ•˜๋Š” ๊ธฐ๋ฒ•์ž…๋‹ˆ๋‹ค.๊ณ„์ธต ๊ตฌ์กฐ๋Š” ์ผ๋ฐ˜์ ์œผ๋กœ ๋ถ€๋ชจ-์ž์‹ ๊ด€๊ณ„๋กœ ์ด๋ฃจ์–ด์ง„ ๋ฐ์ดํ„ฐ๋ฅผ ๋‹ค๋ฃฐ ๋•Œ ์œ ์šฉํ•ฉ๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด, ํšŒ์‚ฌ์˜ ์กฐ์ง๋„์—์„œ๋Š” ๋ถ€์„œ๊ฐ€ ์ƒ์œ„ ๋…ธ๋“œ(๋ถ€๋ชจ)๊ฐ€ ๋˜๊ณ , ํ•˜์œ„ ๋ถ€์„œ๋‚˜ ์ง์›์ด ํ•˜์œ„ ๋…ธ๋“œ(์ž์‹)๊ฐ€ ๋ฉ๋‹ˆ๋‹ค.๊ณ„์ธตํ˜• ์งˆ์˜์—์„œ๋Š” ๊ฐ ํ–‰์ด ์†ํ•œ ๊ณ„์ธต์˜ ๊นŠ์ด๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” `LEVEL`์ด๋ผ๋Š” ๊ฐ€์ƒ ์ปฌ๋Ÿผ์„ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.๋ฃจํŠธ ๋…ธ๋“œ๋Š” 1๋กœ ์‹œ์ž‘ํ•˜๋ฉฐ, ์ž์‹ ๋…ธ๋“œ๋กœ ๋‚ด๋ ค๊ฐˆ์ˆ˜๋ก ๊ฐ’์ด ์ฆ๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.์ฃผ์˜์‚ฌํ•ญ๊ณ„์ธตํ˜• ์งˆ์˜๋Š” Oracle์—์„œ๋งŒ ์ง€์›๋ฉ๋‹ˆ๋‹ค. ๋‹ค๋ฅธ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค(PostgreSQL, MySQL ๋“ฑ)์—์„œ๋Š” WITH RECURSIVE์™€ ๊ฐ™์€ ๋Œ€์ฒด ๋ฐฉ์‹์„ ์‚ฌ์šฉํ•˜์—ฌ ๋น„์Šทํ•œ ๊ฒฐ๊ณผ๋ฅผ ์–ป์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๐Ÿ“Œ ๊ณ„์ธตํ˜• ์งˆ์˜ ๊ธฐ..
[SQL] ์œˆ๋„์šฐ ํ•จ์ˆ˜(ROW_NUMBER, RANK, LAG, CUME_DIST ๋“ฑ)
ยท
๐ŸŽฒDB_SQL
๐Ÿ“Œ ์œˆ๋„์šฐ ํ•จ์ˆ˜(WINDOW FUNCTION)๋ž€?์œˆ๋„์šฐ ํ•จ์ˆ˜๋Š” SQL์—์„œ ๋ฐ์ดํ„ฐ๋ฅผ ๋ถ„์„ํ•˜๊ณ  ์ง‘๊ณ„ํ•  ๋•Œ ์‚ฌ์šฉ๋˜๋Š” ํŠน๋ณ„ํ•œ ํ•จ์ˆ˜์ž…๋‹ˆ๋‹ค.์ผ๋ฐ˜์ ์ธ ์ง‘๊ณ„ ํ•จ์ˆ˜(์˜ˆ: SUM, COUNT ๋“ฑ)๋Š” ๊ฒฐ๊ณผ๋ฅผ ๊ทธ๋ฃนํ™”ํ•˜์—ฌ ๋‹จ์ผ ๊ฐ’์„ ๋ฐ˜ํ™˜ํ•˜๋Š” ๋ฐ˜๋ฉด, ์œˆ๋„์šฐ ํ•จ์ˆ˜๋Š” ๊ทธ๋ฃนํ™”๋œ ๋ฐ์ดํ„ฐ์˜ ๊ฐ ํ–‰์— ๋Œ€ํ•ด ๊ณ„์‚ฐ์„ ์ˆ˜ํ–‰ํ•˜๋ฉฐ, ๊ฒฐ๊ณผ๋ฅผ ์ƒˆ๋กœ์šด ์—ด๋กœ ๋ฐ˜ํ™˜ํ•ฉ๋‹ˆ๋‹ค.์œˆ๋„์šฐ ํ•จ์ˆ˜๋Š” GROUP BY ์ ˆ์„ ์‚ฌ์šฉํ•˜์ง€ ์•Š๊ณ ๋„ ๋ฐ์ดํ„ฐ ์ง‘๊ณ„๋ฅผ ์ˆ˜ํ–‰ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ฆ‰, ๋ฐ์ดํ„ฐ์˜ ๋ชจ๋“  ํ–‰์— ๋Œ€ํ•ด ์—ฐ์‚ฐ์„ ์ˆ˜ํ–‰ํ•˜๋ฉด์„œ๋„ ๊ฐ ํ–‰์˜ ์ƒ์„ธ ์ •๋ณด๋ฅผ ์œ ์ง€ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.์œˆ๋„์šฐ ํ•จ์ˆ˜๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด ๋‹จ์ˆœํ•œ ์ง‘๊ณ„๋ฟ๋งŒ ์•„๋‹ˆ๋ผ, ์ˆœ์œ„, ์ด๋™ ํ‰๊ท , ๋ฐฑ๋ถ„์œจ ๋“ฑ ๋‹ค์–‘ํ•œ ๋ถ„์„์„ ์ˆ˜ํ–‰ํ•  ์ˆ˜ ์žˆ์œผ๋ฉฐ, ๋ณต์žกํ•œ ์„œ๋ธŒ์ฟผ๋ฆฌ๋‚˜ ์ž์—ฐ ์กฐ์ธ์„ ์‚ฌ์šฉํ•˜์ง€ ์•Š๊ณ ๋„ ๋™์ผํ•œ ๊ฒฐ๊ณผ๋ฅผ ์–ป์„ ์ˆ˜ ์žˆ์–ด ์ฟผ๋ฆฌ ์„ฑ๋Šฅ์„ ํ–ฅ์ƒ์‹œํ‚ฌ ์ˆ˜..
[SQL] ์ง‘ํ•ฉ ์—ฐ์‚ฐ์ž(UNION, UNION ALL, INTERSPECT, EXCEPT)
ยท
๐ŸŽฒDB_SQL
๐Ÿ“Œ ์ง‘ํ•ฉ ์—ฐ์‚ฐ์ž(Set Operators)๋ž€?์ง‘ํ•ฉ ์—ฐ์‚ฐ์ž๋Š” ๋‘ ๊ฐœ ์ด์ƒ์˜ SELECT ์ฟผ๋ฆฌ ๊ฒฐ๊ณผ๋ฅผ ๊ฒฐํ•ฉํ•˜๊ฑฐ๋‚˜ ๋น„๊ตํ•˜๋Š” ๋ฐ ์‚ฌ์šฉ๋˜๋Š” ๋„๊ตฌ์ž…๋‹ˆ๋‹ค.๐Ÿ™‚์•„๋ž˜ ๊ทธ๋ฆผ์˜ 4๊ฐ€์ง€ ์—ฐ์‚ฐ์ž๊ฐ€ ํ•ด๋‹น๋ฉ๋‹ˆ๋‹ค. ๐Ÿ“Œ ์—ฐ์‚ฐ์ž๋ณ„ ์„ค๋ช…`UNION` : ๋‘ ๊ฐœ ์ด์ƒ์˜ SELECT ์ฟผ๋ฆฌ ๊ฒฐ๊ณผ๋ฅผ ๊ฒฐํ•ฉํ•˜๊ณ  ์ค‘๋ณต๋œ ํ–‰์„ ์ œ๊ฑฐํ•ฉ๋‹ˆ๋‹ค.โœจ`UNION ALL` : ์ค‘๋ณต๋œ ํ–‰๋„ ํฌํ•จํ•˜์—ฌ ๋ชจ๋“  ๊ฒฐ๊ณผ๋ฅผ ๋ฐ˜ํ™˜ํ•ฉ๋‹ˆ๋‹ค.`INTERSECT` : ๋‘ ๊ฐœ ์ด์ƒ์˜ SELECT ์ฟผ๋ฆฌ์—์„œ ๊ณตํ†ต๋œ ํ–‰๋งŒ ๋ฐ˜ํ™˜ํ•ฉ๋‹ˆ๋‹ค.`EXCEPT` (๋˜๋Š” `MINUS`): ์ฒซ ๋ฒˆ์งธ SELECT ๊ฒฐ๊ณผ์—์„œ ๋‘ ๋ฒˆ์งธ SELECT ๊ฒฐ๊ณผ๋ฅผ ์ œ์™ธํ•œ ๋‚˜๋จธ์ง€ ํ–‰์„ ๋ฐ˜ํ™˜ํ•ฉ๋‹ˆ๋‹ค.        * Oracle์—์„œ๋Š” MINUS๋กœ ์‚ฌ์šฉ๋˜๋ฉฐ, MySQL์—์„œ๋Š” ์ง€์›ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ๐Ÿ“Œ ์ฟผ๋ฆฌ ์‹คํ–‰ ๊ฒฐ๊ณผ ๋น„๊ตโœ”๏ธ์˜ˆ์‹œ ํ…Œ..
[SQL] ์„œ๋ธŒ์ฟผ๋ฆฌ(๋‹จ์ผํ–‰, ๋‹ค์ค‘ํ–‰, ์Šค์นผ๋ผ ์„œ๋ธŒ์ฟผ๋ฆฌ, ์ธ๋ผ์ธ ๋ทฐ)
ยท
๐ŸŽฒDB_SQL
๐Ÿ“Œ ์„œ๋ธŒ์ฟผ๋ฆฌ(SubQuery)๋ž€?์„œ๋ธŒ์ฟผ๋ฆฌ๋Š” ๋‹ค๋ฅธ ์ฟผ๋ฆฌ ๋‚ด์— ํฌํ•จ๋œ ์ฟผ๋ฆฌ์ž…๋‹ˆ๋‹ค. ๋ฉ”์ธ ์ฟผ๋ฆฌ์˜ ๊ฒฐ๊ณผ๋ฅผ ํ•„ํ„ฐ๋งํ•˜๊ฑฐ๋‚˜ ๊ณ„์‚ฐํ•˜๋Š” ๋ฐ ์‚ฌ์šฉ๋ฉ๋‹ˆ๋‹ค.์„œ๋ธŒ์ฟผ๋ฆฌ๋Š” ๊ด„ํ˜ธ๋กœ ๋‘˜๋Ÿฌ์‹ธ์•ผ ํ•˜๋ฉฐ, ๋น„๊ต ์—ฐ์‚ฐ์ž์˜ ์˜ค๋ฅธ์ชฝ์— ์œ„์น˜ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.์„œ๋ธŒ์ฟผ๋ฆฌ๋Š” SELECT, FROM, HAVING, ORDER BY ์ ˆ์—์„œ ๋ชจ๋‘ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.ORDER BY ์ ˆ์€ ์„œ๋ธŒ์ฟผ๋ฆฌ ๋‚ด์— ํฌํ•จ๋  ์ˆ˜ ์—†์œผ๋ฉฐ, ์„œ๋ธŒ์ฟผ๋ฆฌ์˜ ๊ฒฐ๊ณผ๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ์ฃผ ์ฟผ๋ฆฌ์˜ ๋งˆ์ง€๋ง‰์— ์œ„์น˜ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.์—ฐ๊ด€ ์„œ๋ธŒ์ฟผ๋ฆฌ๋Š” ๋ฉ”์ธ ์ฟผ๋ฆฌ์˜ ์ปฌ๋Ÿผ์„ ์ฐธ์กฐํ•˜์—ฌ ์กฐ๊ฑด์„ ์ ์šฉํ•˜๋Š” ์„œ๋ธŒ์ฟผ๋ฆฌ์ž…๋‹ˆ๋‹ค. 1๏ธโƒฃ ๋‹จ์ผ ํ–‰ ์„œ๋ธŒ์ฟผ๋ฆฌ์„œ๋ธŒ์ฟผ๋ฆฌ์˜ ๊ฒฐ๊ณผ๊ฐ€ ํ•˜๋‚˜์˜ ํ–‰์„ ๋ฐ˜ํ™˜ํ•  ๋•Œ ์‚ฌ์šฉ๋ฉ๋‹ˆ๋‹ค. ๋‹ค์Œ๊ณผ ๊ฐ™์€ ๋‹จ์ผํ–‰ ์—ฐ์‚ฐ์ž๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.`=`, ``, `>`, ``, `>=`, ``-- ์ด ์ฟผ๋ฆฌ๋Š” ์ง์›์˜ ๊ธ‰์—ฌ๊ฐ€ ํ‰๊ท  ๊ธ‰์—ฌ๋ณด๋‹ค ๋†’..
[๐Ÿ“š๋ชฉ์ฐจ] SQL ์ž๊ฒฉ๊ฒ€์ • ์‹ค์ „๋ฌธ์ œ
ยท
๐ŸŽฒDB_SQL
https://www.yes24.com/Product/Goods/124645703 (์ •์˜คํ‘œ) SQL ์ž๊ฒฉ๊ฒ€์ • ์‹ค์ „๋ฌธ์ œ - ์˜ˆ์Šค24SQL ์ž๊ฒฉ๊ฒ€์ • ์‹ค์ „๋ฌธ์ œwww.yes24.comhttps://www.dataq.or.kr/www/sub/a_03.do ๋ฐ์ดํ„ฐ์ž๊ฒฉ๊ฒ€์ • - ๋ฐ์ดํ„ฐ์ž๊ฒฉ์‹œํ—˜, DAP, DAsP, SQLP, SQLD, ADP, ADsP.๋ฐ์ดํ„ฐ์ž๊ฒฉ์‹œํ—˜, DAP, DAsP, SQLP, SQLD, ADP, ADsP.www.dataq.or.krโœจSQL ์ž๊ฒฉ์‹œํ—˜ ๊ณผ๋ชฉโœจ SQLD(๊ฐœ๋ฐœ์ž) : 1~2๊ณผ๋ชฉโœ”๏ธSQLP(์ „๋ฌธ๊ฐ€) : 1~3๊ณผ๋ชฉ 1๏ธโƒฃ๊ณผ๋ชฉ - ๋ฐ์ดํ„ฐ ๋ชจ๋ธ๋ง์˜ ์ดํ•ด์ œ1์žฅ ๋ฐ์ดํ„ฐ ๋ชจ๋ธ๋ง์˜ ์ดํ•ดโœ”๏ธ์ œ1์ ˆ ๋ฐ์ดํ„ฐ ๋ชจ๋ธ์˜ ์ดํ•ด ์ œ2์ ˆ ์—”ํ„ฐํ‹ฐ์ œ3์ ˆ ์†์„ฑ์ œ4์ ˆ ๊ด€๊ณ„์ œ5์ ˆ ์‹๋ณ„์ž์ œ2์žฅ ๋ฐ์ดํ„ฐ ๋ชจ๋ธ๊ณผ SQLโœ”๏ธ์ œ1์ ˆ ์ •๊ทœ..
[SQLD] SQL ์ž๊ฒฉ๊ฒ€์ • ์‹ค์ „๋ฌธ์ œ 69p 56๋ฒˆ ๋ฌธ์ œ ํ•ด์„ค(UNION)
ยท
๐ŸŽฒDB_SQL
SQL ์ž๊ฒฉ๊ฒ€์ • ์‹ค์ „๋ฌธ์ œ(2023๋…„ ๊ฐœ์ •ํŒ)๐Ÿ”’์•„๋ž˜๋ฅผ ์ฐธ๊ณ ํ•  ๋•Œ SQL ์‹คํ–‰ ๊ฒฐ๊ณผ๋กœ ๊ฐ€์žฅ ์ ์ ˆํ•œ ๊ฒƒ์€?[TBL1]COL1COL2AAA1ABA2[TBL2]COL1COL2AAA1ABA2ACA3ADA4[SQL]SELECT COL1, COL2, COUNT(*) AS CNTFROM (SELECT COL1, COL2               FROM TBL1               UNION ALL               SELECT COL1, COL2               FROM TBL2               UNION               SELECT COL1, COL2               FROM TBL1)GROUP BY COL1, COL2; ๐Ÿ”“์ •๋‹ต โ‘  COL1COL2CNTAAA11AB..
[Front-End] React, Angular, Vue.js ๊ฐ„๋‹จ ๋น„๊ต
ยท
๐ŸงฉFront-End
React, Angular, Vue.js๋Š” ๋ชจ๋‘ ์ธ๊ธฐ ์žˆ๋Š” ํ”„๋ก ํŠธ์—”๋“œ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ ๋˜๋Š” ํ”„๋ ˆ์ž„์›Œํฌ๋กœ, ๊ฐ๊ธฐ ๋‹ค๋ฅธ ํŠน์ง•๊ณผ ์žฅ๋‹จ์ ์„ ๊ฐ€์ง€๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ๐Ÿ™‚1๏ธโƒฃ React์œ ํ˜• : ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ       * ๋‹ค์–‘ํ•œ ์ถ”๊ฐ€ ๊ธฐ๋Šฅ๋“ค์„ ๊ฒฐํ•ฉํ•˜๋ฉด ํ”„๋ ˆ์ž„์›Œํฌ์ฒ˜๋Ÿผ ์ž‘๋™ํ•  ์ˆ˜ ์žˆ๊ธฐ ๋•Œ๋ฌธ์— React๋ฅผ ํ”„๋ ˆ์ž„์›Œํฌ๋ผ๊ณ  ๋ถ€๋ฅด๊ธฐ๋„ ํ•ฉ๋‹ˆ๋‹ค.์ฐฝ์‹œ์ž : Meta (Facebook)์ฃผ์š” ํŠน์ง•์ปดํฌ๋„ŒํŠธ ๊ธฐ๋ฐ˜ : ๋ชจ๋“  UI ์š”์†Œ๋ฅผ ๋…๋ฆฝ์ ์ธ ์ปดํฌ๋„ŒํŠธ๋กœ ๊ด€๋ฆฌํ•˜๋ฉฐ, ์žฌ์‚ฌ์šฉ์„ฑ๊ณผ ์œ ์ง€๋ณด์ˆ˜์„ฑ์ด ๋›ฐ์–ด๋‚ฉ๋‹ˆ๋‹ค.JSX : JavaScript์™€ HTML์„ ํ˜ผํ•ฉํ•œ ๋ฌธ๋ฒ•(JSX)์„ ์‚ฌ์šฉํ•ด UI๋ฅผ ์ •์˜ํ•ฉ๋‹ˆ๋‹ค.Virtual DOM : DOM ๋ณ€๊ฒฝ์„ ํšจ์œจ์ ์œผ๋กœ ์ฒ˜๋ฆฌํ•ด ์„ฑ๋Šฅ์„ ์ตœ์ ํ™”ํ•ฉ๋‹ˆ๋‹ค.์ž์œ ๋„ : ๋ผ์šฐํŒ…, ์ƒํƒœ ๊ด€๋ฆฌ, ์Šคํƒ€์ผ๋ง ๋“ฑ ์ถ”๊ฐ€ ๊ธฐ๋Šฅ์„ ํ•„์š”์— ๋”ฐ๋ผ ์„ ํƒํ•˜์—ฌ ์‚ฌ์šฉํ•  ์ˆ˜..
[SQLD] SQL ์ž๊ฒฉ๊ฒ€์ • ์‹ค์ „๋ฌธ์ œ 66p 52๋ฒˆ ๋ฌธ์ œ ํ•ด์„ค(GROUPING SETS)
ยท
๐ŸŽฒDB_SQL
SQL ์ž๊ฒฉ๊ฒ€์ • ์‹ค์ „๋ฌธ์ œ(2023๋…„ ๊ฐœ์ •ํŒ) ๐Ÿ”’SQL ์‹คํ–‰ ๊ฒฐ๊ณผ๊ฐ€ ๋‹ค๋ฅธ ํ•˜๋‚˜๋Š”?โ‘ SELECT COL1, SUM(COL2)FROM T1GROUP BY COL1UNION ALLSELECT NULL, SUM(COL2)FROM T1ORDER BY 1 ASC;โ‘กSELECT COL1, SUM(COL2)FROM T1GROUP BY GROUPING SETS(COL1)ORDER BY 1 ASC;โ‘ขSELECT COL1, SUM(COL2)FROM T1GROUP BY ROLLUP(COL1)ORDER BY 1 ASC;โ‘ฃSELECT COL1, SUM(COL2)FROM T1GROUP BY CUBE(COL1)ORDER BY 1 ASC;  ๐Ÿ”“์ •๋‹ตโ‘ก  ๐Ÿ—๏ธํ•ด์„คโœ”๏ธ ์˜ˆ์‹œ ๋ฐ์ดํ„ฐ (T1 ํ…Œ์ด๋ธ”)COL1COL2A10B20C30A15B2..
[SQL] ๊ทธ๋ฃน ํ•จ์ˆ˜(ROLLUP, CUBE, GROUPING, GROUPING SETS)
ยท
๐ŸŽฒDB_SQL
์ด ๊ฒŒ์‹œ๋ฌผ์—์„œ๋Š” SQL์—์„œ ์ž์ฃผ ์‚ฌ์šฉ๋˜๋Š” ๊ฐ•๋ ฅํ•œ ๊ทธ๋ฃนํ™” ๋„๊ตฌ(Aggregate Functions)๋“ค์ธ ROLL UP, GROUPING, GROUPING SETS, CUBE์— ๋Œ€ํ•ด ๊ฐ„๋‹จํžˆ ์„ค๋ช…ํ•˜๊ณ , ๊ฐ ๊ธฐ๋Šฅ์— ๋Œ€ํ•œ ์˜ˆ์ œ ์ฝ”๋“œ๋ฅผ ์ œ๊ณตํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค.๐Ÿ™‚ 1๏ธโƒฃ ROLLUP : ๊ณ„์ธต์  ์†Œ๊ณ„ ์ƒ์„ฑํ•จ์ˆ˜ ์ด๋ฆ„์˜ ์˜๋ฏธ"Roll up"์€ '์ฐจ๊ณก์ฐจ๊ณก ์Œ“์•„์˜ฌ๋ฆฌ๋‹ค'๋ผ๋Š” ๋œป์ž…๋‹ˆ๋‹ค. ๋ฐ์ดํ„ฐ์˜ ๊ณ„์ธต์  ์ง‘๊ณ„๋ฅผ ๋‚˜ํƒ€๋‚ด๋ฉฐ, ๊ฐ ๋ ˆ๋ฒจ์—์„œ ํ•ฉ๊ณ„๋ฅผ ๊ณ„์† ๋ˆ„์ ํ•˜์—ฌ ์Œ“์•„์˜ฌ๋ฆฌ๋Š” ๊ณผ์ •์„ ๋น„์œ ํ•ฉ๋‹ˆ๋‹ค.์„ค๋ช…์ฃผ์–ด์ง„ ์ปฌ๋Ÿผ๋“ค์— ๋Œ€ํ•ด ๊ณ„์ธต์ ์ธ ์†Œ๊ณ„๋ฅผ ์ƒ์„ฑํ•ฉ๋‹ˆ๋‹ค. ์ฆ‰, ๊ฐ€์žฅ ์™ผ์ชฝ ์ปฌ๋Ÿผ๋ถ€ํ„ฐ ์‹œ์ž‘ํ•˜์—ฌ ๊ฐ ์ปฌ๋Ÿผ์— ๋Œ€ํ•œ ์†Œ๊ณ„๋ฅผ ๊ตฌํ•˜๊ณ , ์ตœ์ข…์ ์œผ๋กœ ๋ชจ๋“  ์ปฌ๋Ÿผ์— ๋Œ€ํ•œ ์ดํ•ฉ์„ ๊ตฌํ•ฉ๋‹ˆ๋‹ค.์˜ˆ์ œ (ํ•จ์ˆ˜ ์ธ์ž 1๊ฐœ)โœ”๏ธ ์ฟผ๋ฆฌ๋ฌธSELECT department_id, SUM(salary)..
[Java] JPA, JPQL, QueryDSL ๊ฐœ๋… ์ •๋ฆฌ
ยท
โ˜•Java
1๏ธโƒฃ JPA (Java Persistence API)๊ฐœ์š”JPA๋Š” ์ž๋ฐ” ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์—์„œ ORM (Object-Relational Mapping)์„ ๊ตฌํ˜„ํ•˜๊ธฐ ์œ„ํ•œ ํ‘œ์ค€ API๋กœ, ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์™€ ๊ฐ์ฒด ๊ฐ„์˜ ๋งคํ•‘์„ ํšจ์œจ์ ์œผ๋กœ ๊ด€๋ฆฌํ•ฉ๋‹ˆ๋‹ค. JPA๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด ๊ฐ์ฒด์ง€ํ–ฅ ํ”„๋กœ๊ทธ๋ž˜๋ฐ ๋ฐฉ์‹์œผ๋กœ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์ž‘์—…์„ ์ˆ˜ํ–‰ํ•  ์ˆ˜ ์žˆ์œผ๋ฉฐ, SQL ์ฟผ๋ฆฌ๋ฅผ ์ง์ ‘ ์ž‘์„ฑํ•˜์ง€ ์•Š๊ณ ๋„ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์™€ ์ƒํ˜ธ์ž‘์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด์™€ ํ•จ๊ป˜ `Hibernate`๋Š” JPA์˜ ๊ฐ€์žฅ ๋„๋ฆฌ ์‚ฌ์šฉ๋˜๋Š” ๊ตฌํ˜„์ฒด๋กœ, JPA์˜ ๊ธฐ๋Šฅ์„ ๋”์šฑ ๊ฐ•ํ™”ํ•˜๊ณ  ๋‹ค์–‘ํ•œ ์ถ”๊ฐ€ ๊ธฐ๋Šฅ์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.์ฃผ์š” ๊ธฐ๋Šฅ ๋ฐ ๊ฐœ๋…โœ”๏ธ์—”ํ‹ฐํ‹ฐ ๋งคํ•‘(Entity Mapping)JPA๋Š” ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์˜ ํ…Œ์ด๋ธ”์„ ์ž๋ฐ” ํด๋ž˜์Šค(์—”ํ‹ฐํ‹ฐ)์™€ ๋งคํ•‘ํ•ฉ๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด, `@Entity` ์• ๋„ˆํ…Œ์ด์…˜์„ ์‚ฌ์šฉํ•˜์—ฌ ํด๋ž˜..
[JS] ์ฆ‰์‹œ ์‹คํ–‰ ํ•จ์ˆ˜ ํ‘œํ˜„์‹ (IIFE) vs jQuery ready() ๋ฉ”์„œ๋“œ(์ถ•์•ฝํ˜•)
ยท
๐ŸงฉFront-End
IIFE์™€ jQuery ready() ๋ฉ”์„œ๋“œ๋Š” ๋น„์Šทํ•œ ๊ตฌ์กฐ๋ฅผ ๊ฐ–๊ณ  ์žˆ๋‹ค.โœจ ์ด ๋‘ ๋ฐฉ๋ฒ•์€ ๋ชจ๋‘ ํ•จ์ˆ˜ ํ‘œํ˜„์‹์„ ํ™œ์šฉํ•˜์—ฌ ํŠน์ • ์ž‘์—…์„ ์ˆ˜ํ–‰ํ•˜๋ฉฐ, ์ฝ”๋“œ์˜ ์‹คํ–‰ ์‹œ์ ์„ ์กฐ์ ˆํ•˜๋Š” ๋ฐ ๋„์›€์„ ์ค€๋‹ค.1๏ธโƒฃ ์ฆ‰์‹œ ์‹คํ–‰ ํ•จ์ˆ˜ ํ‘œํ˜„์‹ (IIFE)* IIFE : Immediately Invoked Function Expression(function() { // ์ฆ‰์‹œ ์‹คํ–‰๋  ์ฝ”๋“œ})();// ํ™”์‚ดํ‘œ ํ•จ์ˆ˜(() => {})();์ฆ‰์‹œ ์‹คํ–‰: ์ด ์ฝ”๋“œ๋Š” ์ •์˜๋˜์ž๋งˆ์ž ์ฆ‰์‹œ ์‹คํ–‰๋ฉ๋‹ˆ๋‹ค. ํŽ˜์ด์ง€๊ฐ€ ๋กœ๋“œ๋˜๊ธฐ ์ „ ๋˜๋Š” DOM์ด ์ค€๋น„๋˜๊ธฐ ์ „์—๋„ ์‹คํ–‰๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.์šฉ๋„: ์ฃผ๋กœ ์ „์—ญ ์Šค์ฝ”ํ”„ ์˜ค์—ผ์„ ๋ฐฉ์ง€ํ•˜๊ฑฐ๋‚˜, ์ดˆ๊ธฐํ™” ์ฝ”๋“œ ๋“ฑ์„ ์‹คํ–‰ํ•˜๋Š” ๋ฐ ์‚ฌ์šฉ๋ฉ๋‹ˆ๋‹ค.DOM ์ ‘๊ทผ: DOM์ด ์ค€๋น„๋˜์ง€ ์•Š์•˜์„ ๋•Œ ์‹คํ–‰๋  ์ˆ˜ ์žˆ์œผ๋ฏ€๋กœ, DOM ์š”์†Œ์— ์ ‘๊ทผํ•˜๋Š” ..
[ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค/Java] 2016๋…„(Calendar, LocalDate)
ยท
๐ŸŒท์•Œ๊ณ ๋ฆฌ์ฆ˜ ๋ฌธ์ œํ’€์ด/ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค
https://school.programmers.co.kr/learn/courses/30/lessons/12901๐Ÿ“ ํ’€์ด 3 : LocalDate ํด๋ž˜์Šค`LocalDate.of(year, month, dayOfMonth)`โœจimport java.time.LocalDate;class Solution { // 2016๋…„ a์›” b์ผ์ด ๋ฌด์Šจ ์š”์ผ์ธ์ง€ ๋ฐ˜ํ™˜(SUN~SAT) public String solution(int a, int b) { /* ๋‚ ์งœ ๊ฐ์ฒด๋ฅผ ์ƒ์„ฑํ•˜๊ณ  ์š”์ผ ๋ฌธ์ž์—ด์˜ ์ฒซ 3๊ธ€์ž๋งŒ ์ถ”์ถœ */ return LocalDate.of(2016, a, b).getDayOfWeek().toString().substring(0, 3); }}๐Ÿ“ ํ’€์ด 2 : Calenda..
[๋ฐฑ์ค€/Java] 9012 ๊ด„ํ˜ธ(Stack)
ยท
๐ŸŒท์•Œ๊ณ ๋ฆฌ์ฆ˜ ๋ฌธ์ œํ’€์ด/๋ฐฑ์ค€
https://www.acmicpc.net/problem/9012๐Ÿ“ ํ’€์ด : Stack import java.io.*;import java.util.Stack;public class Main { // ๊ฐ ์ค„๋งˆ๋‹ค ๊ด„ํ˜ธ๊ฐ€ ๊ท ํ˜•์„ ์ด๋ฃจ๊ณ  ์žˆ์œผ๋ฉด "yes"๋ฅผ, ์•„๋‹ˆ๋ฉด "no"๋ฅผ ์ถœ๋ ฅ public static void main(String[] args) throws IOException { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); StringBuilder sb = new StringBuilder(); /* [1] ์ž…๋ ฅ */ int T = Integer.parse..
[SQL] ํฌ๋กœ์Šค ์กฐ์ธ(CROSS JOIN)๊ณผ ํ’€ ์กฐ์ธ(FULL JOIN) ๋น„๊ตํ•˜๊ธฐ
ยท
๐ŸŽฒDB_SQL
https://www.w3schools.com/mysql/mysql_join_cross.asphttps://www.w3schools.com/Sql/sql_join_full.asp W3Schools.comW3Schools offers free online tutorials, references and exercises in all the major languages of the web. Covering popular subjects like HTML, CSS, JavaScript, Python, SQL, Java, and many, many more.www.w3schools.com* w3schools.com ์—์„œ ๊ฐ JOIN์„ ํ‘œํ˜„ํ•˜๊ณ  ์žˆ๋Š” ๊ทธ๋ฆผ์ด ๋™์ผํ•˜๋‹ค.  1๏ธโƒฃ ํฌ๋กœ์Šค ์กฐ์ธ (Cross Join)์„ค๋ช…..
[Spring Boot] Log4j2 ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋กœ SQL ์ฟผ๋ฆฌ ๋กœ๊น… ์„ค์ •ํ•˜๊ธฐ
ยท
โ˜•Java
https://logging.apache.org/log4j/2.12.x/ Log4j – Apache Log4j 2 - Apache Log4j 2Apache Log4j 2 Apache Log4j 2 is an upgrade to Log4j that provides significant improvements over its predecessor, Log4j 1.x, and provides many of the improvements available in Logback while fixing some inherent problems in Logback’s architecture. ## Impologging.apache.orgLog4jdbc๋Š” JDBC ๋“œ๋ผ์ด๋ฒ„๋ฅผ ๊ฐ์‹ธ์„œ SQL ์ฟผ๋ฆฌ์™€ ์‹คํ–‰ ์‹œ๊ฐ„์„ ๋กœ๊ทธ๋กœ ๊ธฐ๋ก..
[SQLD] SQL ์ž๊ฒฉ๊ฒ€์ • ์‹ค์ „๋ฌธ์ œ 53p 36๋ฒˆ ๋ฌธ์ œ ํ•ด์„ค(CROSS JOIN)
ยท
๐ŸŽฒDB_SQL
SQL ์ž๊ฒฉ๊ฒ€์ • ์‹ค์ „๋ฌธ์ œ(2023๋…„ ๊ฐœ์ •ํŒ)๐Ÿ”’์•„๋ž˜ SQL์˜ ์‹คํ–‰ ๊ฒฐ๊ณผ๋กœ ๊ฐ€์žฅ ์ ์ ˆํ•œ ๊ฒƒ์€?[EMP_TBL]EMPNOENAME1000SMITH1050ALLEN1100SCOTT[RULE_TBL]RULE_NORULE1S%2%T%[SQL]SELECT COUNT(*) CNT FROM EMP_TBL A, RULE_TBL B WHERE A.ENAME LIKE B.RULE; ๐Ÿ”“์ •๋‹ตโ‘  0  โ‘ก 2  โ‘ข 4  โ‘ฃ 6  ๐Ÿ—๏ธํ•ด์„ค`FROM EMP_TBL A, RULE_TBL B` : ๋‘ ํ…Œ์ด๋ธ”์˜ ๋ชจ๋“  ํ–‰์„ ์กฐํ•ฉํ•˜์—ฌ ์นด๋ฅดํ…Œ์‹œ์•ˆ ๊ณฑ ์ƒ์„ฑ(CROSS JOIN). `WHERE A.ENAME LIKE B.RULE` : ENAME์ด RULE๊ณผ ์ผ์น˜ํ•˜๋Š”์ง€ ๋น„๊ตํ•˜์—ฌ ์กฐ๊ฑด์— ๋งž๋Š” ํ–‰๋งŒ ํ•„ํ„ฐ๋ง. LIKE ์—ฐ์‚ฐ์ž์—์„œ ์‚ฌ์šฉํ•˜๋Š” ์™€์ผ๋“œ์นด๋“œ `..
[๋ฐฑ์ค€/Java] 4949 ๊ท ํ˜•์žกํžŒ ์„ธ์ƒ(Stack, replaceAll())
ยท
๐ŸŒท์•Œ๊ณ ๋ฆฌ์ฆ˜ ๋ฌธ์ œํ’€์ด/๋ฐฑ์ค€
https://www.acmicpc.net/problem/4949๐Ÿ“ ํ’€์ด 2 : Stack (170ms)`Stack`์„ ์‚ฌ์šฉํ•˜์—ฌ ์—ฌ๋Š” ๊ด„ํ˜ธ๋ฅผ ์ €์žฅํ•˜๊ณ , ๋‹ซ๋Š” ๊ด„ํ˜ธ๋ฅผ ๋งŒ๋‚˜๋ฉด ์Šคํƒ์˜ ๋งจ ์œ„ ํ•ญ๋ชฉ๊ณผ ์ง์„ ๋งž์ถฐ ๊ท ํ˜•์„ ํ™•์ธํ•œ๋‹ค.import java.io.*;import java.util.Stack;public class Main { // ๊ฐ ์ค„๋งˆ๋‹ค ํ•ด๋‹น ๋ฌธ์ž์—ด์ด ๊ท ํ˜•์„ ์ด๋ฃจ๊ณ  ์žˆ์œผ๋ฉด "yes"๋ฅผ, ์•„๋‹ˆ๋ฉด "no"๋ฅผ ์ถœ๋ ฅ public static void main(String[] args) throws IOException { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); StringBuil..
[๋ฐฑ์ค€/Java] 2839 ์„คํƒ• ๋ฐฐ๋‹ฌ('/', '%')
ยท
๐ŸŒท์•Œ๊ณ ๋ฆฌ์ฆ˜ ๋ฌธ์ œํ’€์ด/๋ฐฑ์ค€
https://www.acmicpc.net/problem/2839๐Ÿ“ ํ’€์ด : 5kg ๋ด‰์ง€ ์ตœ๋Œ€ ์‚ฌ์šฉ ํ›„, ๋‚จ์€ ๋ฌด๊ฒŒ์— ๋”ฐ๋ผ ์กฐ์ •import java.io.*;public class Main { // ์„คํƒ• Nkg ๋ฐฐ๋‹ฌ ์‹œ ๋ด‰์ง€(3/5kg)์˜ ์ตœ์†Œ ๊ฐœ์ˆ˜ ์ถœ๋ ฅ(๋ถˆ๊ฐ€๋Šฅ ์‹œ -1) public static void main(String[] args) throws IOException { /* [1] ์ž…๋ ฅ */ BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); int N = Integer.parseInt(br.readLine()); // ์„คํƒ• Nkg (3 ≤ N ≤ 5000) ..
[๋ฐฑ์ค€/Java] 2164 ์นด๋“œ2(LinkedList)
ยท
๐ŸŒท์•Œ๊ณ ๋ฆฌ์ฆ˜ ๋ฌธ์ œํ’€์ด/๋ฐฑ์ค€
https://www.acmicpc.net/problem/2164๐Ÿ“ ํ’€์ด : LinkedListimport java.io.*;import java.util.LinkedList;import java.util.Queue;public class Main { // N์ด ์ฃผ์–ด์กŒ์„ ๋•Œ, ์ œ์ผ ๋งˆ์ง€๋ง‰์— ๋‚จ๊ฒŒ ๋˜๋Š” ์นด๋“œ ๋ฒˆํ˜ธ ์ถœ๋ ฅ public static void main(String[] args) throws IOException { /* [1] ์ž…๋ ฅ */ BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); int N = Integer.parseInt(br.readLine()); // ์นด..
[๋ฐฑ์ค€/Java] 1920 ์ˆ˜ ์ฐพ๊ธฐ(์ด์ง„ ํƒ์ƒ‰, Arrays.binarySearch())
ยท
๐ŸŒท์•Œ๊ณ ๋ฆฌ์ฆ˜ ๋ฌธ์ œํ’€์ด/๋ฐฑ์ค€
https://www.acmicpc.net/problem/1920๐ŸŽฏ ๋ฌธ์ œ ํ•ต์‹ฌ(์ •์ˆ˜ ๋ฒ”์œ„)์ •์ˆ˜ ๋ฒ”์œ„ : `-231` ~ `231-1` (์ค‘๋ณต ํ—ˆ์šฉ) ์‹œ๊ฐ„์ œํ•œ : 1์ดˆ๐Ÿ“ ํ’€์ด 2 : ๋ฐฐ์—ด ์ •๋ ฌ ํ›„ ์ด์ง„ ํƒ์ƒ‰(Arrays.binarySearch())`Arrays.sort()` ๋ฉ”์„œ๋“œ๋กœ ๋ฐฐ์—ด ์ •๋ ฌ ํ›„ `Arrays.binarySearch()` ๋ฉ”์„œ๋“œ๋กœ ์ด์ง„ํƒ์ƒ‰โญ์ด์ง„ํƒ์ƒ‰ : ์ •๋ ฌ๋œ ๋ฐฐ์—ด์—์„œ ๋ฒ”์œ„๋ฅผ ๋ฐ˜์”ฉ ์ขํ˜€๊ฐ€๋ฉฐ ํƒ์ƒ‰ํ•˜๋Š” ์•Œ๊ณ ๋ฆฌ์ฆ˜(์‹œ๊ฐ„๋ณต์žก๋„ `logN`)import java.io.*;import java.util.Arrays;import java.util.StringTokenizer;public class Main // N๊ฐœ์˜ ์ •์ˆ˜ A[1], A[2], …, A[N]์ด ์ฃผ์–ด์ ธ ์žˆ์„ ๋•Œ, ์ด ์•ˆ์— X๋ผ๋Š”..
[๋ฐฑ์ค€/Java] 1018 ์ฒด์ŠคํŒ ๋‹ค์‹œ ์น ํ•˜๊ธฐ(2์ฐจ์› ๋ฐฐ์—ด, ๋น„ํŠธ XOR ์—ฐ์‚ฐ)
ยท
๐ŸŒท์•Œ๊ณ ๋ฆฌ์ฆ˜ ๋ฌธ์ œํ’€์ด/๋ฐฑ์ค€
https://www.acmicpc.net/problem/1018๐Ÿ“ ํ’€์ด 2 : 2์ฐจ์› ๋ฐฐ์—ด์— ๋ฌธ์ž ๋ฐฐ์—ด ์ €์žฅ ํ›„ ์บ๋ฆญํ„ฐ ๋น„๊ต (108ms)`(i + j)`๊ฐ€ ์ง์ˆ˜์ธ์ง€ ์—ฌ๋ถ€์— ๋”ฐ๋ผ ์ƒ‰์ƒ ๋น„๊ตimport java.io.*;import java.util.*;public class Main { // M×N ํฌ๊ธฐ์˜ ๋ณด๋“œ๋ฅผ ์ž˜๋ผ์„œ 8x8 ํฌ๊ธฐ์˜ ์ฒด์ŠคํŒ์œผ๋กœ ๋งŒ๋“ค ๋•Œ, ๋‹ค์‹œ ์น ํ•ด์•ผ ํ•˜๋Š” ์ •์‚ฌ๊ฐํ˜•์˜ ์ตœ์†Œ ๊ฐœ์ˆ˜ ์ถœ๋ ฅ public static void main(String[] args) throws IOException { /* [1] ์ž…๋ ฅ */ BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); ..
[๋ฐฑ์ค€/Java] 11866 ์š”์„ธํ‘ธ์Šค ๋ฌธ์ œ 0(LinkedList, ์›ํ˜• ํ)
ยท
๐ŸŒท์•Œ๊ณ ๋ฆฌ์ฆ˜ ๋ฌธ์ œํ’€์ด/๋ฐฑ์ค€
https://www.acmicpc.net/problem/11866๐Ÿ“ ํ’€์ด : ์—ฐ๊ฒฐ๋ฆฌ์ŠคํŠธ(LinkedList)๋กœ ์›ํ˜• ํ(CircularQueue) ๊ตฌํ˜„ํ•ต์‹ฌ ์ฝ”๋“œ : `queue.offer(queue.poll())``offer()`์™€ `poll()` ๋ฉ”์„œ๋“œ๋ฅผ ์กฐํ•ฉํ•˜์—ฌ ํ์˜ ์•ž์—์„œ ์ œ๊ฑฐํ•œ ์š”์†Œ๋ฅผ ๋‹ค์‹œ ๋’ค๋กœ ๋ณด๋‚ด๋Š” ๊ณผ์ •์„ ๋ฐ˜๋ณตํ•จ์œผ๋กœ์จ, ํ๊ฐ€ ์›ํ˜•์œผ๋กœ ๋™์ž‘ํ•˜๋Š” ๊ฒƒ์ฒ˜๋Ÿผ ๊ตฌํ˜„ํ•  ์ˆ˜ ์žˆ๋‹ค.import java.io.*;import java.util.*;import java.util.stream.*;public class Main { // (N, K)-์š”์„ธํ‘ธ์Šค ์ˆœ์—ด ์ถœ๋ ฅ(์›์—์„œ ์‚ฌ๋žŒ๋“ค์ด ์ œ๊ฑฐ๋˜๋Š” ์ˆœ์„œ) public static void main(String[] args) throws IOException..
[๋ฐฑ์ค€/Java] 11651 ์ขŒํ‘œ ์ •๋ ฌํ•˜๊ธฐ 2(Comparator, ๋žŒ๋‹ค์‹)
ยท
๐ŸŒท์•Œ๊ณ ๋ฆฌ์ฆ˜ ๋ฌธ์ œํ’€์ด/๋ฐฑ์ค€
https://www.acmicpc.net/problem/11651๐Ÿ“ ํ’€์ด : ์ด์ฐจ์› ๋ฐฐ์—ด ์ •๋ ฌ(๋žŒ๋‹ค์‹)ํ•ต์‹ฌ ์ฝ”๋“œ : `Arrays.sort(arrList, (a, b) -> a[1] != b[1] ? a[1] - b[1] : a[0] - b[0]);`import java.io.*;import java.util.*;public class Main { // 2์ฐจ์› ํ‰๋ฉด ์œ„์˜ ์  N๊ฐœ๊ฐ€ ์ฃผ์–ด์งˆ ๋•Œ, y์ขŒํ‘œ -> x์ขŒํ‘œ ์ˆœ์„œ๋กœ ์ •๋ ฌ ํ›„ ์ถœ๋ ฅ public static void main(String[] args) throws IOException { /* [1] ์ž…๋ ฅ */ BufferedReader br = new BufferedReader(new InputStreamRead..
[ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค/Java] ํฐ์ผ“๋ชฌ(Stream.distinct())
ยท
๐ŸŒท์•Œ๊ณ ๋ฆฌ์ฆ˜ ๋ฌธ์ œํ’€์ด/ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค
https://school.programmers.co.kr/learn/courses/30/lessons/1845๐Ÿ“ ํ’€์ด 3 : Stream.distinct()`Stream`์œผ๋กœ ๋ณ€ํ™˜ ํ›„ `distinct()` ๋ฉ”์„œ๋“œ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์ค‘๋ณต์„ ์ œ๊ฑฐํ•œ๋‹ค.โญimport java.util.*;class Solution { // N๋งˆ๋ฆฌ ์ข…๋ฅ˜ ๋ฐฐ์—ด์ด ์ฃผ์–ด์งˆ ๋•Œ, N/2๋งˆ๋ฆฌ๋ฅผ ์„ ํƒํ•  ๊ฒฝ์šฐ ๊ฐ€์งˆ ์ˆ˜ ์žˆ๋Š” ์ตœ๋Œ€ ์ข…๋ฅ˜ ๊ฐœ์ˆ˜ ๋ฐ˜ํ™˜ public int solution(int[] nums) { return Math.min( (int) Arrays.stream(nums).distinct().count(), nums.length / 2); // ์ค‘๋ณต์„ ์ œ๊ฑฐํ•œ ..
[ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค/Java] ์นด๋“œ ๋ญ‰์น˜(LinkedList(Queue))
ยท
๐ŸŒท์•Œ๊ณ ๋ฆฌ์ฆ˜ ๋ฌธ์ œํ’€์ด/ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค
https://school.programmers.co.kr/learn/courses/30/lessons/159994๐Ÿ“ ํ’€์ด 2 : ArrayList๋ฆฌ์ŠคํŠธ๊ฐ€ ๋น„์–ด ์žˆ์œผ๋ฉด `get()`๊ณผ `remove()` ๋ฉ”์„œ๋“œ์—์„œ ์˜ˆ์™ธ๊ฐ€ ๋ฐœ์ƒํ•˜๋ฏ€๋กœ `isEmpty()` ๋ฉ”์„œ๋“œ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๋น„์–ด์žˆ๋Š” ๋ฆฌ์ŠคํŠธ์ธ์ง€ ๋จผ์ € ์ฒดํฌํ•œ๋‹ค.import java.util.*;class Solution { // ์˜๋‹จ์–ด ๋ฐฐ์—ด๊ณผ ์›ํ•˜๋Š” ๋‹จ์–ด ๋ฐฐ์—ด์ด ์ฃผ์–ด์งˆ ๋•Œ, ์˜๋‹จ์–ด๋ฅผ ์ˆœ์„œ๋Œ€๋กœ ์‚ฌ์šฉํ•˜์—ฌ ์›ํ•˜๋Š” ๋‹จ์–ด ๋ฐฐ์—ด์„ ๋งŒ๋“ค ์ˆ˜ ์žˆ๋Š”์ง€ ๋ฐ˜ํ™˜ public String solution(String[] cards1, String[] cards2, String[] goal) { List list1 = new ArrayList(Arrays.as..
yewon31
'๋ถ„๋ฅ˜ ์ „์ฒด๋ณด๊ธฐ' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๊ธ€ ๋ชฉ๋ก (2 Page)