일기 31

자료구조, 자료형, 추상 자료형

자료구조란? Data Structure - 데이터에 효율적으로 접근하고 조작하기 위한 데이터의 조직, 관리, 저장 구조 - 원시 자료형을 기반으로 하는 것(조합한 것) - 자료형의 관점에서는 복합 자료형이 됨 ex) 배열, 연결 리스트, 객체 등 자료형이란? Date Type - 컴파일러 또는 인터프리터에게 프로그래머가 데이터를 어떻게 사용하는지를 알려주는 일종의 데이터 속성 - 자료구조에 비해 훨씬 더 구체적 - 특정 언어에서 정수, 실수, 문자열 등 해당 언어에서 지원하는 원시 자료형까지 포함하는 모든 자료의 유형 추상 자료형이란? Abstract Data Type(ADT) - 자료형에 대한 수학적 모델 - 해당 유형의 자료에 대한 연산들로 명시한 것 - 행동만을 정의할 뿐 실제 구현방법은 명시하지 ..

일기 2023.01.17

BFS

BFS란? 너비 우선 탐색( Breadth-First Search ): 그래프에서 가까운 부분을 우선적으로 탐색하는 알고리즘. 방문 처리, 큐, 큐 자료구조 이용 큐 : https://jun2ee22.tistory.com/entry/%EC%9E%90%EB%A3%8C%EA%B5%AC%EC%A1%B0-%ED%81%90 그래프 자료구조 url tip.1차원 배열이나 2차원 배열을 그래프 형태로 생각하면 수월함. 큐에 삽입(방문 처리) -> 큐에서 pop(0) 후 해당 노드의 방문하지 않은 인접 노드를 큐에 모두 삽입(방문 처리) 더 이상 수행할 수 없을 때까지 반복 방문 순서: 1 -> (1) -> 2 -> 4 -> (2) -> (4) -> 3 -> 5 -> (3) -> (5) ex) BFS 더보기 더보기 f..

일기 2023.01.13

DFS

DFS란? 깊이 우선 탐색( Depth-First Search ) : 그래프에서 깊은 부분을 우선적으로 탐색하는 알고리즘. 방문 처리, 스택, 재귀 함수 이용 스택 : https://jun2ee22.tistory.com/entry/%EC%9E%90%EB%A3%8C%EA%B5%AC%EC%A1%B0-%EC%8A%A4%ED%83%9D 그래프 자료구조 url tip.1차원 배열이나 2차원 배열을 그래프 형태로 생각하면 수월함. 방문하지 않은 인접 노드가 없을 때까지 스택에 하나씩 삽입(방문 처리) -> 스택의 최상단 노드에 인접 노드가 없으면 스택에서 pop() 더 이상 수행할 수 없을 때까지 반복 방문 순서: 1 -> 2 -> (2) -> 4 -> 3 -> 5 -> (5) -> (3) -> (4) -> (1)..

일기 2023.01.13

큐란? FIFO(First-In-First-Out_선입선출) 썰매를 탈 때, 줄을 서고 출발하는 상황 구성 함수 push() : 데이터를 컬렉션에 삽입 pop(0) : 처음 삽입된 데이터를 삭제 주의사항 오버플로(overflow) : 수용할 수 있는 데이터의 크기를 넘어 삽입 연산 수행 시 발생 언더플로(underflow) : 데이터가 전혀 없는 상태에서 삭제 연산 수행 시 발생 파이썬에서는 Collections 모듈에서 제공하는 deque 자료구조 활용 리스트 _ 동적 배열로 구현되어 있어 효율x 나동빈_이것이 코딩테스트다 정리허긔

일기 2023.01.12

스택

스택이란? LIFO(Last-In-First-Out_후입선출) 썰매를 쌓아두고 가져가는 상황 구성 함수 push() : 데이터를 컬렉션에 삽입 pop() : 아직 제거되지 않은 가장 최근에 삽입된 데이터를 삭제 주의사항 오버플로(overflow) : 수용할 수 있는 데이터의 크기를 넘어 삽입 연산 수행 시 발생 언더플로(underflow) : 데이터가 전혀 없는 상태에서 삭제 연산 수행 시 발생 특징 컴파일러가 출력하는 에러의 순서 메모리 영역에서 이 형태로 할당하고 접근하는 구조인 아키텍처 레벨의 하드웨어 스택의 이름으로도 사용 나동빈_이것이 코딩테스트다 정리허긔

일기 2023.01.12