CS/자료구조 3

[C#/자료구조]스택 , 큐

[eBook] 자료구조와 알고리즘 with C# - 3장. 스택 및 큐 1. 스택1) 정의- 한 쪽 끝(상단)에서만 항목을 추가하고 제거할 수 있는 요소의 모음 - 후입선출(LIFO) : 스택에 마지막으로 추가된 요소가 가장 먼저 제거- 예 : 책 (가장 위에 있는 책이 가장 먼저 제거)- 사용 예시 : 구문 분석(텍스트의 문자열을 분석하여 문법 구조 파악, 지금까지 처리된 텍스트의 기호 추적), 재귀 알고리즘 구현, 산술 표현식 평가, 프로그램 메모리에 호출 프레임 저장 등  2) 연산- Push : 스택의 맨 위에 요소를 추가- Pop : 스택에서 가장 위에 있는 요소를 제거 - Peek : 스택에서 가장 위에 있는 요소를 제거하지 않고 반환- Count : 스택의 요소 수를 반환- Contains ..

CS/자료구조 2024.08.05

[자료 구조]선형 자료 구조 - 연결 리스트, 배열, 벡터, 스택, 큐

면접을 위한 CS 전공지식 노트 (주홍철, 길벗) : 237p ~ 246p선형 자료 구조 : 요소가 일렬로 나열되어 있는 자료 구조 1. 연결 리스트(linked list) : 데이터를 감싼 노드를 포인터로 연결해서 공간적인 효율성을 극대화시킨 자료 구조삽입, 삭제 : O(1)탐색 : O(n)- 싱글 연결 리스트(단일 연결 리스트) : next 포인터만 가짐- 이중 연결 리스트 : next 포인터, prev 포인터 가짐- 원형 (이중) 연결 리스트 : 이중 연결 리스트와 같지만, 마지막 노드의 next 포인터가 헤드 노드(맨 앞, 즉 제일 왼쪽에 있는 노드)를 가리킴  2. 배열(array) : 같은 타입의 변수들로 이루어져 있고, 크기가 정해져 있으며, 인접한 메모리 위치에 있는 데이터를 모아놓은 집합..

CS/자료구조 2023.12.08

[자료구조]복잡도 - 시간 복잡도, 빅오 표기법, 공간 복잡도

면접을 위한 CS 전공지식 노트 (주홍철, 길벗) : 233p ~ 237p 1. 자료구조 - 자료구조(data structure) : 효율적으로 데이터를 관리하고 수정, 삭제, 탐색, 저장할 수 있는 데이터 집합- C++ : STL을 기반으로 전반적인 자료 구조를 가장 잘 설명할 수 있는 언어- STL(Standard Template Library) : C++의 표준 템플릿 라이브러리, 스택/배열 등 데이터 구조의 함수 등을 제공하는 라이브러리의 묶음  2. 복잡도 : 시간 복잡도와 공간 복잡도로 나뉨1) 시간 복잡도① C++의 기본 - main 함수를 중심으로 돌아감 -> main 함수를 무조건 하나 만들어야 함- 이후 컴파일이 시작되면 전역변수 초기화, 라이브러리 import 등의 작업 .. -> m..

CS/자료구조 2023.12.06