본문 바로가기

🔅Computer Science🔅4

[자료구조] 힙, 최소힙, 최대힙, heapq(python) 1. 힙(heap)이란? 가장 높은 우선순위를 가지는 노드를 빠르게 찾을 수 있는 자료구조 저장된 값이 힙 조건(완전이진트리, 루트노드의 우선순위가 제일 높아야 됨)을 만족하는 리스트 최대 힙(Max Heap) : 부모 노드 key > 자식 노드 key 최소 힙(Min Heap) : 부모 노드 key < 자식 노드 key 2. heapq import heapq 를 이용해서 모듈 import heap = [] #힙으로 사용할 list 생성 삽입 연산 : heappush(heap명, item) 삭제 연산 : heappop(heap명) heap는 최소힙만 지원됨 추가) heapq 의 내부 동작 원리를 알고 싶으면 신찬수 교수님의 자료구조 강의 참고하기(https://youtu.be/8XnPN6IB22Y) he.. 2023. 2. 18.
[자료구조] 002. 시간 복잡도, Big-O * 본 포스팅은 유튜브에 있는 신찬수 교수님의 자료구조 강의 중 '시간복잡도' 내용을 복습하기 위해 기록한 것 1. 자료구조와 알고리즘 자료구조란 자료(data)를 저장할 수 있는 공간(memory) + 읽기,쓰기,삽입,삭제,탐색과 같은 연산으로 구성된 것 알고리즘은 입력된 data를 유한한 횟수의 연산을 반복하여 정답을 출력하는 것 => 따라서 자료구조와 알고리즘은 뗄 수 없는 관계 2. 인류 최초의 알고리즘 : GCD 계산 gcd_sub, gcd_mod, gcd_rec 각각의 방법에 따라서 구현 가능 3. 알고리즘의 성능 자료구조와 알고리즘의 성능은 대부분 수행 시간으로 정의되는 것이 일반적 하드웨어와 소프트웨어 환경에 구애받지 않는 객관적 컴퓨터 모델을 가정하기 위해서 가상 컴퓨터 / 가상 언어 /.. 2023. 1. 17.
[자료구조] 001. 파이썬 클래스 단계별 복습 * 본 포스팅은 신찬수 교수님의 자료구조 강의 중 '파이썬 클래스 단계별 복습' 내용을 정리한 것 * [00.class의 정의]는 '점프 투 파이썬' 책을 참고함 https://youtu.be/PIidtIBCjE 00. 클래스 정의 Class : 설계 도면 Object(객체) : 클래스로 만든 피조물 (객체마다 고유한 성격을 갖고 있으며, 서로에게 영향을 주지 않음) Instance : 특정 객체가 어떤 클래스의 객체인지 관계 위주로 설명 ex) a는 Cookie의 인스턴스 Method : 클래스 안에 구현된 함수 1. Class 매개 변수 (self) self : 객체 자신을 호출하는 매개 변수 class FourCal() : def __init__ (self, first, second): self.f.. 2023. 1. 7.
[자료구조] 000.프롤로그 자료구조에 대한 이해도가 상당히 낮음을 알게 된 후, 부랴부랴 유튜브를 뒤졌다. 복전생의 한계이기도 하지만.. 알고리즘 강의는 시간표 상 들은 수도 없었고, 자료구조도 C 기반으로 한 학기 들은게 전부라.... 암튼 그래서 유튜브를 통해 Data Structures with Python 강의를 듣기 시작했다. (아래는 신찬수 교수님의 유튭 링크) https://www.youtube.com/@ChanSuShin/featured Chan-Su Shin 한국외국어대학교 컴퓨터공학부 신찬수 교수의 강의용 채널로 전체 공개 콘텐츠입니다. (죽어가던 채널을 코로나가 강제로 부활시키는군요.) 주로 자료구조와 알고리즘에 대한 내용을 다루며, www.youtube.com 강의 내용을 하나하나 수기로 작성하다가 지친 내가.. 2023. 1. 7.