힙(Heap)이란?힙(Heap)이란 최댓값/최솟값을 빠르게 찾기 위해 고안되었으며, 루트 노드가 언제나 최댓값(최대 힙) 또는 최솟값(최소 힙)을 가지는 완전 이진트리(Complete Binary Tree)이다. 일반적인 리스트를 활용하여 최댓값/최솟값을 찾기 위한 max()/min() 함수의 시간 복잡도는 O(n)이다. 그러나 힙을 사용하면 O(log n)으로 수행이 가능하며, 정렬도 O(n log n)의 빠른 속도로 가능하다. 연산에 대한 자세한 이해보다는 힙에 대한 개념과 파이썬에서 활용할 수 있는 방법을 이해하는 것을 목표로 한다. 완전 이진 트리(Complete Binary Tree)마지막 레벨(Level)을 제외한 모든 레벨은 완전히 채워져 있는 이진트리이다. 삽입 연산을 수행할 경우 마지막 ..
인터넷 사용자 간의 약속, HTTP 컴퓨터 한 대에서 Web까지 컴퓨터 존재 두 컴퓨터를 연결하는 "네트워크(Network)"의 탄생 네트워크를 묶어 근거리 지역 "네트워크(Local Area Network, LAN)" 탄생 LAN을 묶어 범지구적으로 연결된 네트워크, "인터넷(Inter Network, Internet)" 탄생 웹이란 인터넷에서 정보를 교환할 수 있는 환경, "WWW(World Wide Web, Web)" 탄생 Web 상에서 정보를 주고받는 방법 클라이언트(Client) : 정보를 요청하는 컴퓨터 서버(Server) : 정보를 제공하는 컴퓨터 클라이언트가 서버에게 정보 요청 요청에 대해서 서버가 작업 수행 수행한 작업의 결과를 클라이언트에게 응답 HTTP(Hypertext Transfe..
enumerate() 함수란?python의 유용한 내장 함수 중 하나는 enumerate 함수이다. 활용 반복 가능한 객체 및 순서가 있는 자료형(list, set, tuple, dictionary, string)을 입력으로 하여 인덱스와 값을 동시에 튜플 형태로 반환해 준다.def enumerate(iterable, start=0): n = start for elem in iterable: yield n, elem n += 1함수 형태 및 사용반복 가능한 객체 iterable과 인덱스 시작 값인 start를 인자로 입력한다. start의 기본값은 0이기 때문에 start 없이 iterable만 입력하더라도 오류 없이 동작한다.enumerate(iterable, st..
람다(lambda) 함수란?python에서 'def'로 함수를 정의하여 사용한다. 그러나 람다 표현식(lambda expression)을 통해 간단하게 함수를 작성할 수 있다. 람다 함수는 익명(anonymous) 함수라고도 부르며, 함수를 인자로 넣을 때 주로 사용한다. 람다 표현식을 시작으로 람다 함수의 개념과 사용법을 알아보자.람다 표현식(lambda expression)람다 표현식은 람다 함수(익명 함수)를 만드는 데 사용된다. 람다 표현식은 다음과 형태로 사용하며, 함수 객체를 가지게 된다.# parameter_list : 매개변수, expression : 표현식lambda [parameter_list] : expression정의된 함수 객체는 아래와 같은 함수 객체처럼 동작한다.def (par..