분류 전체보기 122

[자료구조] chap8. 트리

8.1 트리의 개념 트리: 계층적인 구조를 나타내는 자료구조(계층적인 구조)선형자료구조(리스트, 스택, 큐), 한 개 이상의 노드로 이루어진 유한 집합 노드(node): 트리의 구성요소에 해당하는 A, B, C, D, E , F, G, H, J  A: 루트/ 서브트리에서는 B,C,D가 루트연결선: 간선(edge)A는 B의 부모노드, B는 A의 자식노드, B와C와D는 형제관계조상노드: 임의의 노드 상위에 연결되어 뻗쳐나간 모든 노드 후손노드: 임의의 노드 하위로 연결되어 뻗쳐나간 모든 노드단말노드: 자식노드가 없는 노드 비단말노드노드 차수: 어떤 노드가 갖고 있는 자식노드의 개수트리 차수: 트리가 갖고있는 노드의 차수 중 가장 큰 값트리 레벨: 트리의 각층에 번호 매기기(루트의 레벨이 1, 한 층씩 내려갈..

CS/자료구조 2024.10.22

[자료구조] chap7. 연결리스트 II

7.1 원형 연결 리스트원형 연결 리스트 : 마지막 노드가 첫 번째 노드 가리키는 리스트(마지막 노드의 링크필드가 null이 아닌 첫번째 노드 주소가 되는 리스트) 장점: 하나의 노드에서 다른 모든 노드로의 접근 가능 - 링크 계속 따라가면 결국 모든 노드 거쳐서 자기 자신으로 되돌아온다. ->노드 삽입,삭제가 단순 연결리스트보다 용이.(삭제나 삽입시 항상 선행노드 가리키는 포인터 필요) 특히 유용한 경우 : 리스트의 끝에 노드 삽입하는 연산이 단순 연결리스트보다 효율적. (단순 연결리스트에서 리스트 끝에 노드 추가하려면 첫 번째 노드에서부터 링크를 따라서 노드의 개수만큼 진행하여 마지막 노드까지 가야함.) 원형연결리스트는 원칙적으로 헤드 포인터만 있으면 된다.   원형리스트의 처음에 삽입 : 새로운 노..

CS/자료구조 2024.10.21

[컴퓨터 네트워크] chap2. 애플리케이션 계층

2.1 네트워크 애플리케이션의 원리[네트워크 apps]loss sensitive applications(절대 loss 발생하면 안됨): email, web, text messaging, remote login, P2P file sharingdelay sensiitive applications(loss에는 그다지 sensitive X, delay에 민감): 멀티유저 네트워크 게임, IP너머 통화(skype같은), [스트리밍 저장 비디오(유튜브, 넷플릭스 등), 실시간비디오회의]->bandwidth-sensitive(+용량에도 민감) 이기도 함.+social metworking, internet search ...[네트워크 앱 만들기]다른 end system에서 계속됨 , 네트워크 통신(web server ..

[자료구조] chap6. 연결리스트 I

6.1 리스트 추상 데이터 타입 리스트: 순서 또는 위치를 가지는 항목들이 차례대로 저장 (스택과 큐도 리스트의 일종)                                              ㄴ집합과는 다름(집합은 항목간 순서가 없기 때문에)                                                                                                       ㄴ삽입, 삭제, 탐색연산리스트 ADT 구현:  배열(더 간단)과 연결리스트 통해 가능 BUT 크기 고정. 포인터 이용하여  만들수도 있음 배열을 사용한 리스트 구현의 장단점장점: 구현 간단, 속도 빠름단점: 리스트 크기 고정, 동적으로 크기 늘리고 줄이기 힘듦, 남은 공간 없으..

CS/자료구조 2024.10.18

[자료구조] chap5. 큐

5.1 큐 추상 데이터 타입-먼저 들어온 데이터가 먼저 나가는 구조(선입선출, FIFO) : 뒤에서 새로운 데이터 추가, 앞에서 데이터 하나씩 삭제. *스택은 삽입삭제가 같은 곳에서 일어나지만 큐는 다른 쪽에서 일어남 삽입삭제에 쓰이는 변수: 스택에서는 top이라는 변수 1개 존재, 큐에서는 삽입-rear, 삭제-front 사용 (배열과 연결리스트로 구현) 5.2 선형큐ex. 1차원 배열 쓰는 방법 : (정수저장큐 만든다 가정) 먼저 정수 1차원 배열 정의 - > 삽입, 삭제 위한 변수 front와 rear 만듦ㄴ front 와 rear의 초기값 : -1 (같음) . [실행] 데이터 증가> rear 하나 증가>그 위치에 데이터 저장 삭제할 때도 front 하나 증가> front가 가리키는 위치에 있는 데..

CS/자료구조 2024.10.17

[자료구조] chap4. 스택

4.1 스택이란? -스택: 뭔가를 쌓아놓은 더미, 후입선출 입출력은 맨 위에서만 일어나고 스택의 중간에서는 데이터를 삭제할 수 없다. 스택 상단 : 입출력이 이루어지는 부분스택 하단: 반대쪽 바닥부분요소: 스택에 저장되는 것공백 스택: 스택에 요소가 하나도 없을 때*자료 출력순서가 입력순서 역순으로 이루어져야 할 경우 유용*함수호출 이후 자신을 호출한 함수로 되돌아갈 때 호출된 역순으로 되돌아가야 하므로 스택 사용(복귀할 주소 기억에 사용) -시스템 스택에는 함수가 호출될때마다 활성레코드가 만들어지며 여기에 복귀주소가 저장된다. (활성레코드에는 프로그램 카운터, 함수호출시 매개변수, 함수 안에서 선언된 지역 변수 같이 생성)  -함수호출 일어나면 항상 시스템 스택에 동일한 방법으로 저장 > 함수가 자기 ..

CS/자료구조 2024.10.16

[자료구조] chap3. 배열, 구조체, 포인터

3.1 배열-동일한 타입의 데이터 한 번에 여러 개 만들 때 사용.-배열 사용하면 연속적 메모리 공간이 할당되고 인덱스번호 사용하여 쉽게 접근 가능, 반복루프 이용 -배열 ADT: 배열은 의 쌍으로 이루어진 집합(index 주어지면 해당 value가 대응)ㄴ연산: set(주어진 인덱스에 값 저장), get(인덱스 주어지면 값 추출) 1차원배열:  *인덱스 0부터 시작    컴파일러: 배열에 메모리의 연속된 위치에 할당> list[0] 이 기본주소(base)프로그램에 list[i]라 적으면 컴파일러는 base+i*sizeof(int)에 있는 값 가져옴 2차원 배열: list[0][0] 0행 0열에서 시작.  3.2 구조체 -구조체: 타입이 다른 데이터 묶는 방법, struct 키워드 써서 표기  구조체 t..

CS/자료구조 2024.10.12

[컴퓨터 네트워크] chap1. Computer networks and the Internet

1.1 What's the Internet1.1.1 구성요소(nuts and bolts)로 본 인터넷 -수십억개의 인터넷에 연결된 컴퓨팅디바이스: host=end system. -인터넷의 edge에서 네트워크 앱 실행 -end system은 통신링크와 패킷스위치의 네트워크로 연결 -communication link: (광섬유, 구리선)-wired links, (라디오, 인공위성, 셀룰러)-wireless links, transmission rate(전송속도): 각각의 링크들은 다양한 전송률을 이용하여 데이터 전송 [bandwidth(대역폭)-얼마나 빨리 전송 가능한지]  -packet switches: 데이터를 segment로 나누고 각 세그먼트에 header 붙인 정보 패키지 / 종류: routers와..

[자료구조] chap2. 순환

2.1 순환의 소개-순환: 어떤 알고리즘이나 함수가 자기 자신을 호출하여 문제 해결하는 프로그래밍기법 ex. 피보나치 수열        -순환 알고리즘: 자기 자신을 순환적으로 호출하는 부분+ 순환 호출을 멈추는 부분-순환 호출이 끝에서 이루어지는 꼬리순환은 반복알고리즘으로 쉽게 바꿔 쓸 수 있다.[순환 vs 반복]ㄴ순환: 알고리즘 명확 간결,  반복에 비해 수행속도 느림, 여분의 기억공간 더 필요. 함수 호출 위해서 함수 매개변수들을 스택에 저장하는 사전작업 필요ㄴ반복: 지나치게 복잡해질수도 있음 -순환의 분할정복: 주어진 문제를 더 작은 동일한 문제들로 분해하여 해결-성능: O(n) 2.2 거듭제곱값 계산-팩토리얼에서는 반복이 순환보다 빠름-거듭제곱에서는 순환이 반복보다 빠름        2.3 피보..

CS/자료구조 2024.10.07

[일반물리학] chap3. 벡터

3.1 좌표계 - 직각좌표: (x,y)로 표현한 데카르트 좌표- 평면극좌표: (r,θ) 고정축: +x축/ 각도: 시계 반대방향x=rcosθ, y=rsinθ      3.2 벡터양과 스칼라양-스칼라양: 적절한 물리적 단위는 갖지만 방향성이 없는 하나의 단순한 수치. ex) 부피, 질량, 속력, 시간, 시간간격,온도(양수음수 값 가질 수 o)-벡터양: 스칼라양과 같이 적절한 물리적 단위를 가지며 크기와 방향 모두 갖는 양 ex) 바람의 속도, 변위(두 점 사이의 경로에는 무관한 채 시작점과 끝점의 위치에 의존), 물리적인 단위 가짐 ex) m, m/s, 항상 양수-  벡터 표시  벡터 크기 표시  3.3 기본적인 벡터 연산 -벡터의 동등: 크기와 방향이 같음. ( A=B를 만족하고 평행선을 따라 같은 방향을..

EWHA/24-2 2024.10.03