본문 바로가기
728x90
SMALL

Computer Science17

순열, 조합, 중복순열, 중복조합 순열 [1,2,3] 중 2개를 뽑아 순열을 만드는 예시 def dfs(level): if level == r: print(result) return for i in range(len(arr)): if checked[i] == True: continue result[level] = arr[i] checked[i] = True # 중복순열이 안되게 -> 앞자릿수에서 선택한 값은 뒤에서 선택될 수 없음. dfs(level + 1) checked[i] = False # 다시 새로운 result를 만들어낼 때 숫자가 선택될 수 있게 print(level, checked) arr = [i + 1 for i in range(3)] r = 2 result = [0] * r checked = [False] * len(a.. 2024. 1. 9.
C++ 이중 포인터 완벽 이해 이중 포인터 포인터를 가리키는 포인터는 다른 포인터의 주소를 보유하는 포인터로 생각하면 된다. 1) 단일 포인터 - int에 대한 일반 포인터 : 하나의 별표(*)만 사용해서 선언 int* ptr; 2) 이중 포인터 - int에 대한 포인터를 가리키는 포인터 : 두개의 별표(**)를 사용해서 선언 int** ptrptr; ▪︎ 단일 포인터와 이중 포인터 사용 예시 int value = 5; int* ptr = &value; cout 2023. 10. 1.
Dijkstra 알고리즘 δ(A, B) : A->B로 가는 최단경로 w(A, B) : A와 B 사이의 연결된 edge의 weight if) A와 B 사이에 연결된 edge의 weight = 5 -> w(A,B) = 5 if) A와 B 사이에 edge가 X -> w(A, B) = ∞ (갈 수 없으므로) Single-Source Shortest Paths 시작 정점(s)이 하나 주어졌을 때, s에서 다른 모든 노드로 향하는 shortest path를 찾는 문제 Dijkstra Algorithm - S라는 이미 방문한 정점들에 대한 set 유지 -> 처음엔 비어있고, 시작과 동시에 시작 정점이 s에 들어가게 된다. - D라는 distance array를 정점 수만큼 유지 -> D[i]는 현재까지 밝혀진 경로들 중 최단 경로 (d(s,.. 2023. 5. 23.
Chapter3 - GoBackN과 Selective Repeat Go-Back-N과 Selective Repeat의 차이 - time out이 발생했을 때 어떻게 처리하냐가 이 둘의 큰 차이점 ▪︎ Go-back-N - N개를 실행하다 문제 발생 시 다시 뒤로 간다. - sender는 ACK를 받지 않고 최대 N개까지 파이프라인 형식으로 보낼 수 O - receiver는 오직 cumulative ack를 보냄. - 항상 자신이 정상적으로 받았던 마지막 seq #의 packet에 대해서만 ACK를 보냄. ex) 3번을 보냄. -> seq # 0,1,2,3에 대한 패킷은 모두 정상적으로 받았음을 의미 - 순서에 맞지 않게 온 packet은 모두 무시 -> gap은 허용 X - sender는 ack를 아직 받지 않은 가장 오래된 패킷에 대해 timer를 실행 (N개 단위로.. 2023. 4. 25.
Chapter 3 - Transport layer Transport services and protocols - 서로 다른 host에서 실행되는 application 프로세스 사이에 논리적인 통신연결을 만들어준다.(논리적인 선을 만들어주는게 X) - transport 프로토콜은 end system 안에서 동작 (network core에선 구현 필요 X) - sender (in application layer): segment 단위로 application message들을 쪼개서, network layer로 전송 - receiver (in transport layer): segment를 message로 재조립 후, application layer로 전송(어느 socket으로 보낼지 결정 후 전송) - Internet application에서는 2개의 tr.. 2023. 4. 21.
Chapter 1 - application layer Internet : 1) nuts and bolts view(구성 요소를 가지고 인터넷 정의) computing devices : hosts=end systems, 인터넷의 edge에서 돌아가는 네트워크 앱 packet switches : 데이터의 chunk들인 packet 전달하는 역할 / routers, switches communication linkes : device에 연결하기 위함 / fiber(광케이블), copper(구리), radio(무선), satellite(위성) - transmission rate : 전송 속도 - bandwidth(대역폭) : 신호를 전송할 수 있는 주파수 범위 혹은 폭, link의 성능 -> link를 통해 1초에 몇 bit로 전송 가능한지 bandwidth는 네.. 2023. 4. 14.
320x100
LIST