코딩가딩가

[JAVA]배열

Noooodle 2024. 3. 23. 23:55
  • get(int idx): idx번째 원소 반환 -> O(1)
  • change(int idx, int val): idx번째 원소를 val로 변경 -> O(1)
  • append(int val): 가장 뒤에 원소 삽입 -> O(1)  
    • 배열은 고정 길이, 배열이 꽉 찬 경우에는 쓸 수 없음 
    • 리턴값 boolean타입: 원소 삽입에 성공하면 true, 실패하면 false
  • insert(int idx, int val): 현재 idx번째 원소의 앞에 원소 삽입 -> O(n)
    • idx번째부터 뒤의 값을 한 칸씩 오른쪽으로 미루고 idx번째에 val을 삽입함
    • idx는 배열의 원소 개수 이하여야 함
    • 배열은 고정 길이, 배열이 꽉 찬 경우에는 쓸 수 없음 
    • 리턴값 boolean타입: 원소 삽입에 성공하면 true, 실패하면 false
  • erase(int idx): idx번째 원소 삭제 -> O(n)
    • idx번째의 원소를 삭제하고 뒤의 값을 왼쪽으로 한 칸씩 옮김
    • idx는 배열의 원소 개수 이하여야 함
    • 배열은 고정 길이, 배열이 꽉 찬 경우에는 쓸 수 없음 
    • 리턴값 boolean타입: 원소 삽입에 성공하면 true, 실패하면 false

 

*원소에 접근하고 변경하는 것은 빠르지만, 중간에 원소를 추가/삭제하는 것은 최악의 경우 최대 배열의 크기만큼 시간이 걸린다.

 

'코딩가딩가' 카테고리의 다른 글

[JAVA]BOJ 10431, 줄세우기  (0) 2024.05.22
[JAVA]BOJ 1236, 성 지키기  (0) 2024.05.16
[JAVA]BOJ 10158  (1) 2024.01.16
[JAVA]BOJ 13223  (0) 2024.01.10
[JAVA]BOJ 1543  (0) 2024.01.04