배열에 대해 알아보자! 📚
배열이 뭐죠? 🤔
배열은 프로그래밍에서 데이터를 저장하는 기본적인 방법 중 하나입니다. 간단하게 말하면, 같은 타입의 여러 데이터를 하나의 변수에 저장하는 자료구조라고 할 수 있습니다. 배열을 사용하면 많은 데이터를 효율적으로 관리하고, 접근할 수 있습니다.
배열의 특징 🌟
인덱스: 배열의 각 요소는 인덱스를 통해 접근할 수 있습니다. 인덱스는 보통 0부터 시작합니다. 고정된 크기: 배열은 생성할 때 크기를 미리 정해야 합니다. 이후에는 크기를 변경할 수 없습니다. 같은 타입: 배열의 모든 요소는 같은 데이터 타입이어야 합니다. 예를 들어, 정수형 배열에는 정수만 들어갈 수 있습니다.
배열의 장단점 🎢
장점 빠른 접근 속도: 인덱스를 사용해 O(1) 시간에 원하는 요소에 접근할 수 있습니다. 간단한 구현: 배열은 비교적 구현이 간단합니다.
단점 고정된 크기: 배열의 크기를 변경할 수 없어서 메모리 낭비가 발생할 수 있습니다. 삽입 및 삭제의 어려움: 배열 중간에 요소를 삽입하거나 삭제하면, 많은 요소를 이동시켜야 합니다. 간단한 코딩테스트 배열 문제 🚀
문제: 배열 요소의 합 구하기 ✨
주어진 정수 배열의 모든 요소를 더한 값을 구하는 함수를 작성해보겠습니다. 함수 이름은 sumArray라고 하고, 파라미터로 정수 배열 arr을 받아야 합니다.
text
1입력 예시2arr = [1, 2, 3, 4, 5]3출력 예시415text
1def sumArray(arr):2 total = 03 for num in arr:4 total += num5 return total설명 📋
total 변수를 0으로 초기화합니다. 배열 arr의 각 요소를 순회하면서 total에 더합니다. 최종적으로 total을 반환합니다. 이렇게 하면 배열의 모든 요소를 더한 값을 구할 수 있습니다! 코딩테스트 준비에 도움이 되길 바랍니다! 🚀
파이썬에서 배열을 다룰 때 유용한 함수와 메서드
- len() 배열의 길이를 반환합니다.
text
1arr = [1, 2, 3, 4, 5]2print(len(arr)) # 출력: 5- append() 배열의 끝에 요소를 추가합니다.
text
1arr = [1, 2, 3]2arr.append(4)3print(arr) # 출력: [1, 2, 3, 4]- insert() 특정 위치에 요소를 삽입합니다.
text
1arr = [1, 2, 4]2arr.insert(2, 3)3print(arr) # 출력: [1, 2, 3, 4]- pop() 배열의 끝 또는 특정 위치에 있는 요소를 제거하고 반환합니다.
text
1arr = [1, 2, 3, 4]2print(arr.pop()) # 출력: 43print(arr) # 출력: [1, 2, 3]4
5print(arr.pop(1)) # 출력: 26print(arr) # 출력: [1, 3]- remove() 특정 값을 가진 첫 번째 요소를 제거합니다.
text
1arr = [1, 2, 3, 2, 4]2arr.remove(2)3print(arr) # 출력: [1, 3, 2, 4]- index() 특정 값이 처음으로 나타나는 위치를 반환합니다.
text
1arr = [1, 2, 3, 4, 2]2print(arr.index(2)) # 출력: 1- count() 특정 값이 배열에 몇 번 나타나는지 세어 반환합니다.
text
1arr = [1, 2, 3, 2, 2, 4]2print(arr.count(2)) # 출력: 3- sort() 배열을 오름차순으로 정렬합니다.
text
1arr = [4, 2, 3, 1]2arr.sort()3print(arr) # 출력: [1, 2, 3, 4]- reverse() 배열의 순서를 반대로 뒤집습니다.
text
1arr = [1, 2, 3, 4]2arr.reverse()3print(arr) # 출력: [4, 3, 2, 1]- slice 배열의 일부를 잘라서 반환합니다.
text
1arr = [1, 2, 3, 4, 5]2print(arr[1:4]) # 출력: [2, 3, 4]3print(arr[:3]) # 출력: [1, 2, 3]4print(arr[3:]) # 출력: [4, 5]