Posts [프로그래머스 인공지능스쿨] Week1-3 파이썬 기초
Post
Cancel

[프로그래머스 인공지능스쿨] Week1-3 파이썬 기초


강의

Python Dictionary

파이썬에서 제공하는 딕셔너리 자료형을 배웠다.

딕셔너리는 Key, Value를 이용하여 대응 관계를 나타낼 수 있는 자료형이다.

배열과 다르게 { } 를 이용한다.

  • 딕셔너리에서 Key, Value 값 얻기
1
2
3
dic.key()
dic.values()
dic.items()

items를 이용하면 두 값을 모두 얻을 수 있다.
값을 리스트에 담으려면 list()로 감싸주면 된다.

1
list(dic.key())
  • Key를 이용하여 Value 얻기
1
2
dic.get(key)
dic[key]

두 방법으로 동일한 결과를 가질 수 있다.
하지만 키값이 존재하지 않는 경우 [] 를 이용하면 key 오류가 발생하며, get() 함수를 이용할 경우 None을 돌려준다.

get() 함수의 경우 default 값을 반환하도록 설정할 수 있다.

1
dic.get(key, default)

key값이 없을 경우 default 를 반환한다.

집합 (set)

파이썬은 집합과 관련된 자료형을 지원한다.
set 키워드를 통해 집합을 만들수 있다.

1
s = set([1,2,3])

집합은 두 가지 특징을 가지고 있다.

  1. 중복을 허용하지 않는다.
  2. 순서가 없다.

집합에 값을 추가할 때는 add, update를 이용한다.

1
2
3
s1.add(x)

s1.update([x,y])

집합의 원소를 삭제할 때는 remove를 이용한다.

1
s1.remove(x)
  • 교집합
    두 가지 방법을 이용할 수 있다.
1
2
3
s1 & s2

s1.intersection(s2)
  • 합집합
    두 가지 방법을 이용할 수 있다.
1
2
3
s1 | s2

s1.union(s2)
  • 차집합
    두 가지 방법을 이용할 수 있다.
    앞의 교집합, 합집합과 달리 두개의 순서에 따라 결과가 달라진다.
1
2
3
s1 - s2

s1.difference(s2)

람다 (lambda)

람다는 파이썬에서 제공하는 기능으로 간단한 함수를 만들어 사용할 수 있다.
이름 없는 함수, 익명함수라고 한다.

사용방법은 생각보다 간단하다.

1
lambda 인자 : 표현식

이와 같은 형식으로 사용할 수 있다.

탐욕법 (Greedy Algorithm)

알고리즘의 각 단계에서 최적이라고 생각되는 것을 선택하는 방법.
현재의 선택이 전체 단계의 최적해를 해치지 않는다는 것을 보장하는 경우에 사용할 수 있음.


문제

문제 1 - 완주하지 못한 선수

문제 2 - 체육복

문제 3 - 큰 수 만들기


This post is licensed under CC BY 4.0 by the author.