language 6

[Kotlin] val과 var의 차이?

변수란? 데이터를 저장하는 메모리 공간의 이름으로 메모리 공간에 저장된 데이터를 사용하기 위해 변수를 선언해야한다. 변수는 선언 이후 값이 변한 수 있는 가변 변수(var)와 값이 변할 수 없는 불변 변수(val)로 나뉜다. 코틀린은 두 변수를 모두 지원하고 있다. val 불변(immutable)변수로, 선언 이후 read-only 만 가능하다 var 가변(immutable)변수로, 선언 이후에도 read, write가 가능하다. 변수 선언하기 자바는 “[타입] 변수명 = 값” 의 형태로 변수를 선언한다. int id = 1; String language = "JAVA"; 반면 코틀린은 “[val 또는 var] 변수명 = 값” 의 형태로 변수를 선언할 수 있다. 이때 val로 선언된 변수 language..

language/kotlin 2023.01.02

프로그래머스 하노이의 탑 (파이썬 풀이)

https://programmers.co.kr/learn/courses/30/lessons/12946?language=python3 코딩테스트 연습 - 하노이의 탑 하노이 탑(Tower of Hanoi)은 퍼즐의 일종입니다. 세 개의 기둥과 이 기동에 꽂을 수 있는 크기가 다양한 원판들이 있고, 퍼즐을 시작하기 전에는 한 기둥에 원판들이 작은 것이 위에 있도록 순서대 programmers.co.kr 내가 한 풀이 n=1일 경우 1번 탑에서 3번 탑으로 이동 = 1 n=2일 경우 1번 탑에서 1번째 판 2번 탑으로 이동 1번 탑에서 2번째 판 3번 탑으로 이동 2번 탑에서 1번째 판 3번 탑으로 이동 => n=1일 경우 3번 반복 n=3일 경우 1번 탑에서 1,2번째 판 2번 탑으로 이동 => n=2일 경..

language/python 2021.10.15

[파이썬/python] 순열(permutations)과 조합(combinations)

순열 서로 다른 n개 중 r개를 뽑아 순서를 고려하여 경우의 수를 나열 nPr의 형태로 표현한다. ex ) ['가','나','다','라'] 중 1등, 2등을 뽑는 방법은 아래와 같다. ['가' '나'] /['가' '다']/['가' '라'] ['나' '가'] /'[나' '다']/'[나' '라'] ['다' '가'] /['다' '나']/['다' '라'] ['라' '가'] /['라' '나']/['라' '다'] 조합 서로 다른 n개 중 r개를 뽑아 순서를 고려하지않고 경우의 수를 나열 nCr의 형태로 표현한다. ex ) ['가','나','다','라'] 중 2개를 뽑는 방법은 아래와 같다. ['가' '나'] /['가' '다']/['가' '라'] '[나' '다']/'[나' '라'] ['다' '라'] 파이썬에서 순열(..

language/python 2021.10.03

파이썬 힙(heapq) 모듈

힙(heap)이란? - 부모 노드가 자식 노드보다 키값이 항상 큰 '최대 힙' 과 항상 값이 작은 '최소 힙'이 있다. - 최대값, 최소값을 빠르게 찾아내기 위한 완전이진트리 모양의 자료구조 파이썬에서 힙 -파이썬은 heapq 모듈(우선순위 큐 알고리즘) 를 제공한다. -heapq 모듈은 최소 힙 형태로만 구현되기 때문에 최대힙의 경우 따로 구현해야한다. cf. 최대힙 구현하기 import heapq list_a=[4,1,8,9,2,5] max_heap=[] for i in list_a: heapq.heappush(max_heap,(-i,i)) while max_heap: print(heapq.heappop(max_heap)[1]) #9 #8 #5 #4 #2 #1 힙 원소 추가 heapq.heappush..

language/python 2021.09.30

파이썬 내장함수 map

map 함수란? map 함수는 반복가능한 iterable객체를 받아, 각 요소마다 함수를 적용하는 함수이다. 주로 list 객체에 사용한다. map(적용할 함수,iterable 객체) map 함수 예제 리스트에 적용한 map 함수 num_list=["1234"] a=list(map(int,num_list)) print(a) #[1234] num_list=[1,2,3,4] a=list(map(str,num_list)) print(a) #['1', '2', '3', '4'] num_list=[1,2,3,4] a=int(''.join(map(str,num_list))) print(a) #1234 딕셔너리에 적용한 map 함수 num={1:10,2:20,3:30} a=list(map(lambda x:x*2,nu..

language/python 2021.09.03