본문 바로가기

컴퓨터공학기초 개념146

Data Structure - Stack & Linked List 1. Stack(스택) - 쌓다 - 큐와 다르게 데이터의 출입이 한쪽에서만 발생한다. - 그러므로 가장 나중에 삽입된 데이터가 가장 먼저 나가는 구조를 갖고 있다.(LIFO - Last In, First Out) [주요 기능] push(): 스택에 데이터 삽입 pop(): 스택에서 데이터 꺼내기 [Stack 활용의 예] - Stack은 프로세스 실행 구조의 기본이다. 그러므로 프로세스에서는 스택의 자료구조를 사용한다. [Stack 장점] 구조가 단순해서 구현이 쉽다. 데이터를 저장/읽기(검색) 속도가 빠르다. → 프로세스 실행 구조로 사용하는 이유 [Stack 단점] 데이터의 최대 개수를 미리 정해야 한다. 그렇기에 남는 공간이 생길 수 있다.(낭비 발생 - 이런 이유로 파이썬은 재귀함수를 1000번까지.. 2020. 8. 14.
Data Structure - Array * 해당 포스팅은 파이썬을 이용한 알고리즘 공부를 기록합니다. 1. 자료구조와 알고리즘이란? - 자료구조(= data structure): 대량의 데이터를 효율적으로 관리할 수 있는 데이터구조를 의미한다. - 데이터의 특성과 구조에 따라 데이터를 효율적으로 처리하기 위해 필요한 코드가 달라진다. 현실 속 데이터관리의 예시) 학년/반/학번, 우편번호, 전화번호, 주민등록번호 등등 현실 속 자료구조의 예시) 전화번호부, 사전 대표적 자료구조) 배열, 스택, 큐, Linked List, Hash Table, Heap, etc - 알고리즘(= algorithm): 어떤 문제를 풀기 위한 절차 또는 특정 입력에 따라 원하는 출력을 얻게하는 프로그래밍 - 프로그래밍에서 어떤 문제를 풀기 위한 방식이나 과정은 정해져.. 2020. 8. 12.