전체 글
-
자바스크립트 객체지향 기본기코드잇 부스트 2024. 6. 3. 23:26
자바스크립트 객체지향 기본기1. 객체와 클래스객체 지향 프로그래밍이란? 구성:프로퍼티(property): 변수메소드(method): 함수*절차 지향 프로그래밍(Process-Oriented Programming, POP): 데이터 구조와 이에 수반하는 동작들을 분리하는 컴퓨터 프로그래밍의 패러다임 객체 만들기 1-1: Object-Literalconst user = { email: 'chris123@google.com', birthdate: '1992-03-21', buy(item) { console.log(`${this.email} buys ${item.name}`); },};중괄호를 쓰고 그 안에 프로퍼티와 메소드를 나열하는 것 객체 만들기 1-2: Factory functionf..
-
네트워크 13주차: Link) ARP, ethernet교내 강의/컴퓨터 네트워크 2024. 6. 3. 20:24
MAC Address:3계층에서는 32bit IP로 주소를 구분한다.2계층에서는 MAC 주소 (Media Access Control address)를 쓴다. (물리적 주소)(맥 주소는 물리적으로 연결된 인터페이스 간에 프레임을 전송하는 데 사용된다) 맥 주소는 48비트로 표현한다.16진수(4비트)를 12개 이어붙인 형태로 사용하며 두 개씩 끊어서 하이픈('-') 으로 구분한다.(예시 : 1A-2F-BB-76-09-AD) LAN 환경의 모든 인터페이스는 고유한 맥 주소를 가지고 있다. ARP Protocol:IP를 이용해 MAC주소를 알아내는 프로토콜. 모든 IP 노드는 ARP table을 가지고 있다.ARP table에는 정보가 형식으로 저장된다.TTL은 언제까지 이 주소 매핑을 저장할지 유효 시간을 ..
-
문해기: 트리 지름 구하기교내 강의/문제해결 기법 2024. 6. 3. 16:23
입력: 하나의 트리 출력: 두 정점 (u,v)의 거리의 최댓값 Brute Force: O(n^2) ~ O(n^3)BFS로 가능한 (u, v)의 모든 조합을 다 해본다.가장 간선의 갯수가 많은 두 점이 정점이다.시간복잡도: O(n^3)*시간복잡도: O(n^2) (점 하나를 고정한 상태에서 BFS 할 경우) O(n) 알고리즘점 하나를 지정한 상태에서 BFS로 가장 먼 지점 u를 찾는다.그 점에서 BFS로 가장 먼 지점 v를 찾는다.*간선의 갯수가 가장 많은 경우가 n개라고 했을때, n개의 간선의 갖는 점이 여러개인 것이 아니라면 자명하다.
-
알고리즘: Convex Hull(컴벡스 헐), Graham Scan, Quick Hull알고리즘 2024. 6. 1. 16:18
Convex Hull:차원 평면에 여러개의 점이 있을 때, 그 점 중 일부를 이어서 나머지 점을 내부에 포함할 수 있는 볼록 다각형을 만드는 알고리즘.볼록 다각형이란 다각형 내부의 두 점을 잇는 어떤 선분도 다각형 외부로 나가지 않는 단순 다각형사전지식:위 문제를 이해하기 위해서는 우선 CCW 알고리즘을 알아야한다.https://qktjwl123.tistory.com/95 알고리즘: CCW(Counter Clock Wise)CCW 알고리즘: 3개의 점 A, B, C가 있을 때 이 점 3개를 이은 직선의 방향을 알고자 할 때 유용한 기하 알고리즘. 세 점 A(x1, y1), B(x2, y2), C(x3, y3)이 주어졌을 때두 벡터 (x2-x1, y2-y1), (x3-x1, y3-y1)의 외qktjwl1..
-
12주차: Link) MAP교내 강의/컴퓨터 네트워크 2024. 5. 30. 21:11
multiple access protocol:두종류의 링크:Point to Point: Ethernet switch와 host간의 1ㄷ1 매칭Broadcast: old-fashiond Ethernet, upstream HFC, wireless LAN (bus 같은거)위 사진에서는 한 링크를 여러 장치가 공유해서 사용하고 있다.collision:한 링크에 여러 신호를 동시에 전송하게 되면 신호 간에 간섭이 발생함. Multiple access protocol: distributed algorithm: 노드가 채널을 어떻게 나눠서 가질 지 결정하는 방법. (충돌 방지 등) 즉, 언제 노드가 전송할 지 결정하는 알고리즘이다. -Ideal Multiple access protocol:가정: Rbps의..
-
모던자바스크립트: 문법과 표현 & 유용한 내부 기능코드잇 부스트 2024. 5. 30. 11:42
자바스크립트의 문법과 표현-문장과 표현식문장 (statements): 어떤 동작이 일어나도록 작성된 최소한의 코드 덩어리표현식 (expressions): 결과적으로 하나의 값이 되는 모든 코드*문장과 표현식의 차이는 변수에 할당해 보면 알 수 있다. (error나면 표현식 아님)- 조건을 다루는 표현식`조건 ? a : b` 엘비스 연산자 (조건 연산자)*표현식이기 때문에 반복문의 실행, 변수의 할당 등은 불가.-spread 구문배열명 앞에 …을 붙으면 ‘ ‘를 두고 나열함.이를 활용하면 배열을 복사하는 것도 가능 (참조 x)const codeit = {name: 'codeit',};const codeitClone = { ...codeit, // spread 문법!}; console.log(co..
-
모던 자바스크립트: 동작원리 & 함수 다루기코드잇 부스트 2024. 5. 30. 11:19
모던 자바스크립트란?JS는 시간이 지나며 유용한 기능이 추가되고 발전하는데 ECMA international에서 이를 관리한다.새로운 내용이 추가될 때마다 ES1, ES2, ~, 로 출시중이다.웹 브라우저는 최신버전을 항상 완벽하게 지원하지는 못한다.따라서 현시점에서 사용하기 적합한 범위 내에서 최신 버전의 표준을 준수하는 스크립트를 모던 자바스크립트라고 부르게 되었다.자바스크립트의 동작원리-데이터 타입의 특징과 종류유연한 데이터 타입: 상황에 따라 타입이 변할 수 있음. (연산 등)추가된 데이터:- Symbol: 유일한 값 `const user = Symbol('this is a user');` 이런식으로 사용한다~ 어떤 값과 비교해도 false를 반환한다.- BigInt: 엄청 큰 수..
-
알고리즘: 확장 유클리드 호제법알고리즘 2024. 5. 28. 16:17
우선 유클리드 호제법을 먼저 공부하고 보자!!https://qktjwl123.tistory.com/97 알고리즘: 유클리드 호제법(최대공약수, gcd)유클리드 호제법유클리드 호제법은 두 수 A,B의 최대공약수를 구하는 알고리즘이다. 방법A=0이면 GCD(0,B)=B이므로 GCD(A,B)=B이고 멈춤.B=0이면 GCD(A,0)=A이므로 GCD(A,B)=A이고 멈. A를 A = B⋅Q + R의 형qktjwl123.tistory.com모듈러 역수란?확장 유클리드 알고리즘은 모듈러 역수를 구하는 알고리즘이다.모듈러 역수란 A*B (mod C) = 1이 되게하는 B를 뜻한다. (A와 C는 주어지고 B를 구해야한다.)*모듈러 역수는 A와 C가 서로소일 경우에만 존재한다.*GCD(A, C) = 1인 경우 A (m..