알고리즘 기초 강의를 찾던 중 유튜버 나동빈님의 이코테 알고리즘 강의를 발견했다.
말로만 듣던 알고리즘을 독학하자니 아주 눈 앞이 캄캄했다,,
나동빈님의 강의는 기초적인 문법, 구문 하나하나 제대로 설명해주셨기에 믿고 들어보았다!
이런 고퀄의 강의를 무료로 듣게 해주셔서 정말 정말 감사드립니다,,,,,,,,
수 자료형
모든 프로그래밍은 데이터를 다루는 행위이다.
파이썬의 자료형은 정수형, 실수형, 복소수형, 문자열, 리스트, 튜플, 사전 등이 있다.
C++의 vector library, 자바의 arraylist library가 제공하는 기본적인 기능이 파이썬에 이미 내재되어 있다.
(Python으로 알고리즘(코테)를 준비하기 딱 좋다)
- 정수형
정수를 다루는 자료형이다. (양의 정수, 음의 정수, 0)
이렇게 대입 연산자를 이용한다.
a라는 이름의 변수의 1000이라는 상수 값을 넣겠다는 의미이다.
그리하여 변수 a를 출력하면 1000 값이 출력된다.
- 실수형
소수점 아래의 데이터를 포함하는 수 자료형이다.
5.으로 5.0을 표현할 수 있다. (-.7 또한 -0.7과 같다)
- 지수 표현 방식
e나 E를 이용한 지수 표현 방식을 이용할 수 있다.
e나 E의 다음에 오는 수는 10의 지수부를 의미한다.
예를 들어, 1e9는 10의 9제곱이 된다.
유효숫자e^지수 = 유효숫자 X 10^지수
이는 임의의 큰 수를 표현하기 위해 자주 사용된다.
최단 경로 알고리즘에서 도달할 수 없는 노드에 대해 최단거리를 무한(INF)로 설정하곤 한다.
이때 가능한 최댓값이 10억 미만이라면 무한의 값으로 1e9를 이용할 수 있다.
음의 정수도 정상적으로 처리되는 것을 확인할 수 있다.
IEEE754 표준에서는 실수형을 저장하기 위해 4바이트 혹은 8바이트의 고정된 크기의 메모리를 할당하므로 컴퓨터 시스템은 실수 정보를 표현하는 정확도에 한계를 지닌다.
예를 들어, 10진수 체계에서는 0.3 + 0.6 = 0.9로 정확히 떨어진다.
하지만 2진수에서 0.9를 정확히 표현할 수 없다.
0.9와 최대한 가깝게 표현하지만 미세한 오차가 발생할 수 밖에 없다.
이러한 표현상의 한계를 극복하기 위해서 round() 함수를 이용한다.
예를 들어 123.456을 소수 셋째 자리에서 반올림하려면 round(123.456, 2)라고 작성한다. 결과는 123.46이 된다.
- 수 자료형 연산
사칙연산과 나머지 연산자가 많이 사용된다.
단, 나누기 연산자(/)를 주의해서 사용해야 한다. 파이썬에서 나누기 연산자는 나눠진 결과를 실수형으로 반환하기 때문이다.
다양한 로직을 설계할 때에는 나머지 연산자(%)를 이용할 때가 많을 것이다. (나머지 값)
예를 들어, a가 홀수인지 체크할 때 사용된다.
몫을 얻기 위한 몫 연산자인 //도 사용한다. 이외에 거듭 제곱 연산자(**) 등 다양한 연산자가 있다.
이처럼, 별도로 수학 라이브러리를 사용하지 않아도 내재되어 있는 기본 연산자들을 사용하기 좋다.
나누기 연산자 실행 시 값이 실수형으로 나오는 것을 확인할 수 있다.
'이코테 강의 정리' 카테고리의 다른 글
(이코테 w/ Python) 조건문 (0) | 2022.06.18 |
---|---|
(이코테 w/ Python) 기본 입출력 (1) | 2022.06.17 |
(이코테 w/ Python) 사전, 집합 자료형 (0) | 2022.06.16 |
(이코테 w/ Python) 문자열과 튜플 자료형 (0) | 2022.06.15 |
(이코테 w/Python) 리스트 자료형 (0) | 2022.06.14 |