본문 바로가기
반응형

공부19

큐의 개념/특징/원리/구현방식/복잡도/종류 큐(Queue)는 데이터를 순서대로 처리하는 기본적인 자료 구조 중 하나로, 선입선출(FIFO, First In First Out) 원칙을 따릅니다. 큐의 동작 방식은 먼저 들어온 데이터가 먼저 처리되는 구조로, 마치 일상에서 줄을 서는 것과 비슷합니다. 예를 들어, 은행에서 순번대로 고객을 응대하거나, 음식점에서 주문을 처리할 때도 이러한 구조를 사용합니다.큐의 특징과 동작 원리큐는 두 가지 주요 연산을 중심으로 동작합니다:삽입(Enqueue): 데이터를 큐의 끝에 추가하는 작업입니다.삭제(Dequeue): 큐의 앞에서 데이터를 제거하는 작업입니다.또한 큐에는 peek 또는 front라는 연산도 존재하며, 이는 큐의 가장 앞에 있는 데이터를 확인하되 제거하지는 않습니다. 이러한 연산을 통해 큐는 데이터.. 2024. 9. 27.
스택의 개념/동작원리/장점/단점/활용 등 스택 (Stack): 후입선출의 원리와 그 활용**스택(Stack)**은 컴퓨터 과학에서 자주 사용되는 중요한 데이터 구조 중 하나입니다. 스택은 후입선출(LIFO, Last In First Out) 방식으로 동작하는 구조로, 마지막에 추가된 데이터가 가장 먼저 제거됩니다. 스택은 함수 호출 추적, 브라우저의 뒤로 가기 기능, 괄호 검증 등의 다양한 상황에서 사용됩니다. 이번 포스팅에서는 스택의 개념과 그 특성, 그리고 주요 활용 사례에 대해 알아보겠습니다.1. 스택의 개념과 동작 원리스택은 데이터를 쌓아 올리는 방식으로 작동합니다. 마치 접시를 쌓는 것처럼, 새로운 데이터가 스택의 맨 위에 추가되며, 데이터를 꺼낼 때는 가장 마지막에 추가된 데이터부터 꺼냅니다. 이러한 동작 방식 때문에 스택은 후입선출.. 2024. 9. 25.
배열의 개념/특징/구조/장점/단점/구조비교 배열 (Array) :: 기본 데이터 구조배열(Array)은 컴퓨터 과학에서 가장 기본적이면서도 중요한 데이터 구조 중 하나입니다. 배열은 고정된 크기의 연속적인 메모리 공간을 할당하여 데이터를 저장하는 구조입니다. 각 데이터는 인덱스라는 번호를 통해 접근할 수 있기 때문에, 배열을 사용하면 효율적인 데이터 검색이 가능합니다.1. 배열의 개념과 특징배열은 동일한 데이터 타입의 값을 일정한 크기로 모아 놓은 자료 구조입니다. 즉, 배열 내의 모든 값은 같은 타입이어야 하며, 배열의 크기가 고정되어 있기에 한 번 생성된 배열은 크기를 변경할 수 없습니다. 배열에서 가장 큰 장점 중 하나는 임의 접근(Random Access)이 가능하다는 점입니다. 배열의 인덱스를 사용하면 O(1) 시간 복잡도로 특정 데이터.. 2024. 9. 24.
저급언어 VS 고급언어 저급언어 VS 고급언어프로그래밍 언어는 컴퓨터와 상호작용하기 위해 사용되는 수단으로, 인간이 컴퓨터에 지시를 내리는 도구입니다. 이러한 프로그래밍 언어는 크게 저급 언어와 고급 언어로 나눌 수 있습니다. 두 언어는 그 목적과 사용 용도, 접근성에서 큰 차이를 보이며, 각각의 장단점이 있습니다. 저급 언어는 하드웨어와 가까운 수준의 언어로서 컴퓨터가 직접 이해할 수 있는 기계어에 가깝습니다. 반면 고급 언어는 인간이 이해하기 쉽게 추상화된 형태로, 컴파일러나 인터프리터가 기계어로 번역해줍니다. 이 글에서는 저급 언어와 고급 언어의 정의, 특징, 차이점, 그리고 각 언어의 사용 사례에 대해 상세히 설명하겠습니다.  1. 저급 언어의 정의와 특징 저급 언어(Low-Level Language)는 하드웨어에 매우.. 2024. 9. 20.
다양한 프로그래밍 언어들(Python/Java/C++/JavaScript/C#/PHP) 1. Python (파이썬)파이썬은 간결하고 읽기 쉬운 문법을 가진 고수준 프로그래밍 언어로, 초보자부터 전문가까지 널리 사용되고 있습니다. 웹 개발, 데이터 분석, 인공지능, 스크립팅 등 다양한 분야에서 사용되며, 코드 작성이 간단하고 명확하여 빠르게 프로토타입을 개발할 수 있습니다.주요 특징:간결한 문법: 다른 언어에 비해 코드가 짧고 읽기 쉽습니다.광범위한 라이브러리 지원: 데이터 과학, 인공지능, 웹 개발 등 다양한 라이브러리가 존재합니다.플랫폼 독립성: 파이썬 코드는 대부분의 운영 체제에서 동일하게 실행됩니다.# 두 숫자를 더하는 함수def add_numbers(a, b): return a + bresult = add_numbers(5, 7)print(f"두 숫자의 합: {result}").. 2024. 9. 11.
반응형