Skip to content

daeunni/For_codingtest

Repository files navigation

For_codingtest

This repo contains useful algorithm problems & templates for coding tests ๐Ÿ“š.

๐ŸŒŸ All about graphs - Use these templates! :)


๐Ÿ’ฌ Summary

1. Greedy

  • ํ˜„์žฌ ์ƒํ™ฉ์—์„œ ๊ฐ€์žฅ ์ข‹์•„๋ณด์ด๋Š” ๊ฒƒ์„ ์„ ํƒ

    ๋ฌธ์ œ์—์„œ '๊ฐ€์žฅ ํฐ, ์ž‘์€ ์ˆœ์„œ๋Œ€๋กœ' ๋ผ๋Š” ๊ธฐ์ค€์„ ์ œ์‹œํ•˜๋Š” ๊ฒฝ์šฐ๊ฐ€ ๋งŽ์Œ

  • ๊ทธ๋ฆฌ๋”” ํ•ด๋ฒ•์ด ์ •๋‹นํ•œ์ง€ ๊ฒ€ํ† ํ•ด์•ผํ•จ

    ex) ๊ฑฐ์Šค๋ฆ„๋ˆ ๋ฌธ์ œ๋Š” ๋™์ „์˜ ํฐ ๋‹จ์œ„๊ฐ€ ํ•ญ์ƒ ์ž‘์€ ๋‹จ์œ„์˜ ๋ฐฐ์ˆ˜์ด๋ฏ€๋กœ, ์ž‘์€ ๋‹จ์œ„์˜ ๋™์ „์„ ์ข…ํ•ฉํ•ด ๋‹ค๋ฅธ ํ•ด๊ฐ€ ๋‚˜์˜ฌ ์ˆ˜ ์—†๊ธฐ ๋•Œ๋ฌธ์— ๊ทธ๋ฆฌ๋””๊ฐ€ ์„ฑ๋ฆฝ

  • My solution

    - ๋ชซ๊ณผ ๋‚˜๋จธ์ง€๋ฅผ ์ž˜ ์ด์šฉํ•˜์ž 
    - ๋ชซ๊ณผ ๋‚˜๋จธ์ง€๋กœ ๋ฐ˜๋ณต๋˜๋Š” ํŒจํ„ด์„ ์ฐพ์•„๋ณด์ž ! 
    

2. Graph (BFS, DFS)

  • ๋‹จ๋ฐฉํ–ฅ ๊ทธ๋ž˜ํ”„ ๋‚˜ํƒ€๋‚ด๊ธฐ : 2์ฐจ์›๋ฆฌ์ŠคํŠธ๋กœ node๋ณ„ ์—ฐ๊ฒฐ๋œ edge ์—ฐ๊ฒฐ๋ฆฌ์ŠคํŠธ๋ฅผ ๋งŒ๋“ ๋‹ค

  • BFS : ํ(์„ ์ž…์„ ์ถœ)๋ฅผ ์ด์šฉํ•˜๊ธฐ

    ๋ชจ๋“  edge์˜ weight๊ฐ€ ๊ฐ™์„ ๋•Œ ์ตœ๋‹จ๊ฑฐ๋ฆฌ๋ฅผ ๊ตฌํ•˜๊ธฐ

  • DFS : ์Šคํƒ(ํ›„์ž…์„ ์ถœ)์„ ์ด์šฉํ•˜๊ธฐ + ์žฌ๊ท€ํ•จ์ˆ˜ ์ด์šฉ !

  • My solution

    - ์ƒํ•˜์ขŒ์šฐ ์ด๋™ ์œ ํ˜•์ด ์ž์ฃผ ์ถœ์ œ๋จ 
    

3. Dynamic Programming

  • ํฐ ๋ฌธ์ œ๋ฅผ ์ž‘์€ ๋ฌธ์ œ๋กœ ๋‚˜๋ˆŒ ์ˆ˜ ์žˆ๊ณ , ์ž‘์€ ๋ฌธ์ œ์˜ ํ•ด๋‹ต์„ ์žฌํƒ•ํ•  ์ˆ˜ ์žˆ์„ ๋•Œ

  • ํ•˜ํ–ฅ์‹(Top-Down) : ํฐ ๋ฌธ์ œ์—์„œ ์ž‘์€ ๋ฌธ์ œ โžก๏ธ ์žฌ๊ท€ํ•จ์ˆ˜ ์ด์šฉ (๋ฉ”๋ชจ์ด์ œ์ด์…˜, memoization)

  • ์ƒํ–ฅ์‹(Bottom-Up) : ์ž‘์€ ๋ฌธ์ œ์—์„œ ํฐ๋ฌธ์ œ โžก๏ธ ๋ฐ˜๋ณต๋ฌธ ์ด์šฉ (๊ฒฐ๊ณผ ์ €์žฅ์šฉ DP ํ…Œ์ด๋ธ” ์ด์šฉ)

    DP ๋ฌธ์ œ์ธ์ง€ ์•„๋Š”๊ฒŒ ์ค‘์š”ํ•จ ! ์ค‘๋ณต์—ฌ๋ถ€๋ฅผ ํ™•์ธํ•˜์ž !

4. Shortest path

  • ๋‹ค์ต์ŠคํŠธ๋ผ : edge๊ฐ€ ๋ชจ๋‘ ์–‘์ˆ˜์ผ ๋•Œ
    • O(V^2) : ์ตœ๋‹จ๊ฑฐ๋ฆฌ๋ฅผ ์„ ํ˜•์ ์œผ๋กœ ํƒ์ƒ‰

    • O(ElogV) : ์šฐ์„ ์ˆœ์œ„ ํ(์šฐ์„ ์ˆœ์œ„๊ฐ€ ๊ฐ€์žฅ ๋†’์€ ๋ฐ์ดํ„ฐ๋ฅผ ๊ฐ€์žฅ ๋จผ์ € ์‚ญ์ œ. ์ฃผ๋กœ ์ตœ์†Œํž™์œผ๋กœ ๊ตฌํ˜„ํ•ด ๊ฐ€์žฅ ์ž‘์€ ์›์†Œ๋ถ€ํ„ฐ ์ถ”์ถœ)

      ๊ฑฐ๋ฆฌ๊ฐ€ ๊ฐ€์žฅ ์งง์€ ์ˆœ์„œ๋Œ€๋กœ ํ์—์„œ ๋‚˜์˜ฌ ์ˆ˜ ์žˆ๋„๋ก ํ•˜๊ธฐ์œ„ํ•ด ์ตœ์†Œํž™ ์‚ฌ์šฉ

About

Algorithm archive for future ๐Ÿ”ฅ

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages