๐Ÿšฉ TIL[Today I Learned

๐Ÿšฉ 221026 TIL[Today I Learned]

Dbswnstjd 2022. 10. 28. 18:27

221026 TIL

๋ฐฑ์ค€

Class2

      • 1012๋ฒˆ ๋ฌธ์ œ_์œ ๊ธฐ๋† ๋ฐฐ์ถ”
      • 1654๋ฒˆ ๋ฌธ์ œ_๋žœ์„  ์ž๋ฅด๊ธฐ
      • 2108๋ฒˆ ๋ฌธ์ œ_ํ†ต๊ณ„ํ•™

ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค

Level1

Level2

Level3


CS


์˜ค๋Š˜ ๋ฐฐ์šด ๋‚ด์šฉ

  • Counter ํ•จ์ˆ˜

    • Counter ์ƒ์„ฑ๋Š” ์—ฌ๋Ÿฌ ํ˜•ํƒœ์˜ ๋ฐ์ดํ„ฐ๋ฅผ ์ธ์ž๋กœ ๋ฐ›๋Š”๋ฐ ๋จผ์ € ์ค‘๋ณต๋œ ๋ฐ์ดํ„ฐ๊ฐ€ ์ €์žฅ๋œ ๋ฐฐ์—ด์„ ์ธ์ž๋กœ ๋„˜๊ธฐ๋ฉด ๊ฐ ์›์†Œ๊ฐ€ ๋ช‡๋ฒˆ์”ฉ ๋‚˜์˜ค๋Š”์ง€๊ฐ€ ์ €์žฅ๋œ ๊ฐ์ฒด๋ฅผ ์–ป๊ฒŒ ๋œ๋‹ค.

      from collections import Counter
      >>> Counter(["hi", "hey", "hi", "hi", "hello", "hey"])
      Counter({'hi': 3, 'hey': 2, 'hello': 1})
  • BFS / DFS

    • ๊นŠ์ด ์šฐ์„  ํƒ์ƒ‰(DFS)
      • ๋ฃจํŠธ ๋…ธ๋“œ(ํ˜น์€ ๋‹ค๋ฅธ ์ž„์˜์˜ ๋…ธ๋“œ)์—์„œ ์‹œ์ž‘ํ•ด์„œ ๋‹ค์Œ ๋ถ„๊ธฐ(branch)๋กœ ๋„˜์–ด๊ฐ€๊ธฐ ์ „์— ํ•ด๋‹น ๋ถ„๊ธฐ๋ฅผ ์™„๋ฒฝํ•˜๊ฒŒ ํƒ์ƒ‰ํ•˜๋Š” ๋ฐฉ์‹
    • ๋„ˆ๋น„ ์šฐ์„  ํƒ์ƒ‰(BFS)
      • ๋ฃจํŠธ ๋…ธ๋“œ(ํ˜น์€ ๋‹ค๋ฅธ ์ž„์˜์˜ ๋…ธ๋“œ)์—์„œ ์‹œ์ž‘ํ•ด์„œ ์ธ์ ‘ํ•œ ๋…ธ๋“œ๋ฅผ ๋จผ์ € ํƒ์ƒ‰ํ•˜๋Š” ๋ฐฉ๋ฒ•์œผ๋กœ, ์‹œ์ž‘ ์ •์ ์œผ๋กœ๋ถ€ํ„ฐ ๊ฐ€๊นŒ์šด ์ •์ ์„ ๋จผ์ € ๋ฐฉ๋ฌธํ•˜๊ณ  ๋ฉ€๋ฆฌ ๋–จ์–ด์ ธ ์žˆ๋Š” ์ •์ ์„ ๋‚˜์ค‘์— ๋ฐฉ๋ฌธํ•˜๋Š” ์ˆœํšŒ ๋ฐฉ๋ฒ•
      • ์ฃผ๋กœ ๋‘ ๋…ธ๋“œ ์‚ฌ์ด์˜ ์ตœ๋‹จ ๊ฒฝ๋กœ๋ฅผ ์ฐพ๊ณ  ์‹ถ์„ ๋•Œ ์ด ๋ฐฉ๋ฒ•์„ ์„ ํƒ
      • DFS(๊นŠ์ด ์šฐ์„  ํƒ์ƒ‰) BFS(๋„ˆ๋น„ ์šฐ์„  ํƒ์ƒ‰)
        > ํ˜„์žฌ ์ •์ ์—์„œ ๊ฐˆ ์ˆ˜ ์žˆ๋Š” ์ ๋“ค๊นŒ์ง€ ๋“ค์–ด๊ฐ€๋ฉด์„œ ํƒ์ƒ‰ > ํ˜„์žฌ ์ •์ ์— ์—ฐ๊ฒฐ๋œ ๊ฐ€๊นŒ์šด ์ ๋“ค๋ถ€ํ„ฐ ํƒ์ƒ‰
        ์Šคํƒ ๋˜๋Š” ์žฌ๊ท€ ํ•จ์ˆ˜๋กœ ๊ตฌํ˜„ ํ๋ฅผ ์ด์šฉํ•ด์„œ ๊ตฌํ˜„
  • BFS

from collections import deque
def bfs(graph, start, visited):
    queue = deque([start])
    visited[start] = True

    while queue:
        v = queue.popleft()
        print(v, end=' ')
        for i in graph[v]:
            if not visited[i]:
                queue.append(i)
                visited[i] = True
  • DFS
def dfs(graph, v, visited):
    visited[v] = True
    print(v, end=" ")
    for i in graph[v]:
        if not visited:
            dfs(graph, i, visited)
  • ์ด๋ถ„ ํƒ์ƒ‰(Binary Search)
    • ์‹œ๊ฐ„๋ณต์žก๋„ : O(logN)
    • ์ •๋ ฌ๋œ ์ž๋ฃŒ๋ฅผ ๋ฐ˜์œผ๋กœ ๋‚˜๋ˆ„์–ด ํƒ์ƒ‰ํ•˜๋Š” ๋ฐฉ๋ฒ•
    • ์ฃผ์˜์ 
      • ์ž๋ฃŒ๋Š” ์˜ค๋ฆ„์ฐจ์ˆœ์œผ๋กœ ์ •๋ ฌ๋œ ์ž๋ฃŒ์—ฌ์•ผ ํ•œ๋‹ค.

'๐Ÿšฉ TIL[Today I Learned' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€

๐Ÿšฉ 221031 TIL[Today I Learned]  (0) 2022.10.31
๐Ÿšฉ 221030 TIL[Today I Learned]  (0) 2022.10.31
๐Ÿšฉ 221029 TIL[Today I Learned]  (0) 2022.10.30
๐Ÿšฉ 221028 TIL[Today I Learned]  (0) 2022.10.28
๐Ÿšฉ 221027 TIL[Today I Learned]  (0) 2022.10.28