목록자료구조 (3)
주뇽's 저장소
그래프 그래프(Graph) 연결되어 있는 객체 간의 관계를 표현하는 자료구조 ex) 트리도 그래프의 하나 전기회로의 소자 간 연결상태 지도에서 도시들의 연결상태 지하철 노선도 도로망 선수과목 관계 그래프의 역사 1800년대 오일러의 의하여 창안 오일러 문제 모든 다리를 한번만 건너서 처음 출발했던 장소로 돌아오는 문제 A.B.C.D 지역의 연결 관계 표현 위치 : 정점(node) 다리 : 간선(edge) 오일러 정리 모든 정점에 연결된 간선의 수가 짝수 이면 오일러 경로가 존재함 따라서 그래프 (b)에는 오일러 경로가 존재하지 않음 그래프의 정의 그래프 G는(V,E)로 표시 정점(Vertices) 여러 가지 특성을 가질 수 있는 객체 의미 V(G) : 그래프 G의 정점들의 집합 노드(Node)라고도 불림..
QUEUE 먼저 들어온 데이터가 먼저 나가는 자료구조 선입선출(FIFO: First-In-First-Out) ex) 매표소의 대기열 통신에서의 데이터 패킷들의 모델링에 이용 프린터와 컴퓨터 사이의 버퍼링 스택과 마찬가지로 프로그래머의 도구 많은 알고리즘에서 사용 우선순위 QUEUE-> Heep 구현 front , rear = -1 로 초기화 rear : 입력 front : 출력 선형큐 배열을 선형으로 사용하여 큐를 구현 # 입력이 많으면 overflow가 발생가능함 쓰지않는 메모리가 많아짐 비어있음에도 불구하고 못 쓰는 공간이 생김 결론적으로 선형큐는 사용하지 않는다. 구현 init() isFull() isEmpty() push(char elem) pop() peek() print() #include #..
스택구조 스택은 자료구조의 기본이다 LIFO구조 제일 마지막에 들어온 원소가 제일 먼저 나감 ex) 바닥부터 책을 하나하나 쌓아 올리는 느낌 #배열과 스택은 비슷하지만 다르다 스택을 이용하여 처리하려면 배열의 값을 다시 스택에 담는 행위가 필요하다. 구현 init()함수 Stack의 포인터를 배열의 외부로 설정 즉 포인터 = -1; isFull()함수 Stack의 들어갈 수 있는 공간의 모든 자리가 꽉 차 있는지 확인 isEmpty()함수 Stack의 들어갈 수 있는 공간이 있는지 확인 push()함수 Stack의 공간이 남아있다면 원하는 원소를 맨 뒤에 하나 추가 pop()함수 Stack의 원소가 있는지 확인 후 있다면 가장 맨 뒤에 원소를 return 해주고 원소 삭제 peek()함수 Stack의 원..