
배열
배열 선언
방법 1. 배열 값들을 나열
- arr1 = [1,2,3,4,5]
- arr2 = [0]*6 # 6개의 0이 순차적으로 저장

방법 2. 리스트 생성자 사용
- arr = list(range(6)) # [0,1,2,3,4,5]
방법 3. 리스트 컴프리헨션 활용
- arr = [0 for _ in range(6)]

Java에서의 배열은 선언후 크기 변경이 안되는데
Python에서 배열은 동적으로 크기 조절이 가능하다는 점이 완전 대박!
* 배열 ! 뮤터블 객체!
배열과 차원
1차원 배열

2차원 배열
책에 나온 설명과 이미지를 그대로 가져오는게 훨씬 훨씬 나을 것 같아
이번 포스팅에서는 특히 더 많이 참조하고 있습니다.


배열의 효율성
배열 연산의 시간 복잡도
다시 한번 리마인드하면,
시간 복잡도는 최악의 경우를 계산해 표현한다.
1. 접근(조회)할 때
배열은 임의 접근이라는 방법으로 배열의 모든 위치에 있는 데이터에
단 한 번에 접근할 수 있기 때문에
시간 복잡도 : O(1)
2. 맨 뒤에 삽입할 때
시간 복잡도 : O(1)
3. 맨 앞에 삽입 할 때 : 데이터를 오른쪽으로 전부 차례차례 한칸씩 미뤄야하기 때문에
시간 복잡도 : O(N)
4. 중간에 삽입할 때
시간 복잡도 : O(N)
자주 활용하는 리스트 기법
리스트에 데이터 추가
1. append() : 리스트 제일 끝에 데이터 추가하는 내장 함수
2. append() : 리스트 제일 끝에 데이터 추가하는 내장 함수
함수 호출

람다식
람다식은 함수를 더 간단하게 표현하는 방법.
람다식은 익명 함수를 만드는 데 사용하는데, 여기서 익명함수랑
딱 한 번 실행할 목적으로 사용하는 용도(다른 함수의 인수로 사용)
람다식 정의
lambda x, y : x + y #x와 y를 받아서 더한 값을 반환하는 람다식
람다식은 변수로 참조할 수 있다.
add = lambda x, y : x+y
print(add(5,4))

람다식을 인수로 넘길 수 있다.
num = [1,2,3,4,5] #리스트 선언
squares = list(map(lambda x: x**2, num)) #람다식 넘기기
위 list(map(a,b))의 경우 a람다식을 적용해 b의 원소를 각각 제곱한 결과값을 새로운 리스트로 반환한다.

list(map( 함수 또는 타입 , list))
의 경우 다소 생소해 찾아보니 아래와 같이 실수를 전부 정수로 바꾸는 경우도 있었다.

한가지 더 살펴보자
a = list(map(str,range(10)))
range(10)의 경우 0~9까지 int로 반환하는데
각 값을 다시 string으로 변환해서 list로 저장한다.

코딩 테스트 코드 구현 노하우
조기 반환

보호 구문 (예외 처리)

if not isinstance( param1, A type) → param1이 A type이 아니면 if구문 실행

합성 함수
합성함수는 2개 이상의 함수를 활용하여 함수를 추가로 만드는 기법.
보통 합성함수는 람다식을 활용.


'프로그래밍 이야기/파이썬 코딩 테스트 스터디' 카테고리의 글 목록
hoony926 님의 블로그 입니다.
hoony926.tistory.com
♬ 자료 출처 - 책
코딩 테스트 합격자 되기 - 파이썬 편

이 포스팅의 모든 내용은 해당 책의 내용을 바탕으로 하고 있습니다.
감사합니다.
'프로그래밍 이야기 > 파이썬 코딩 테스트 스터디' 카테고리의 다른 글
파이썬 코딩테스트 스터디 2주차 #3 - 몸풀기 문제 (0) | 2024.06.08 |
---|---|
파이썬 코딩테스트 스터디 2주차 #2 - 자주 활용하는 리스트 기법 (0) | 2024.06.08 |
파이썬 코딩테스트 스터디 1주차 #3 - 코딩 테스트 필수 문법 - 함수 (0) | 2024.06.06 |
파이썬 코딩테스트 스터디 1주차 #2 - 코딩 테스트 필수 문법 - 데이터 타입 (1) | 2024.06.05 |
코딩 테스트 스터디 커리큘럼 feat. 코딩 테스트 합격자 되기 - 파이썬 (1) | 2024.06.02 |