[자료구조] 원소를 무한히 저장하는 ArrayList 구현하기 [JAVA]

2020. 3. 28. 03:05·자료구조 + 알고리즘

 

 


흑흑 나 너무 부족하다 빨리 공부를 더 열심히 해야겠다

 

앞서 만든 ArrayList는 배열의 크기를 지정해 줬기 때문에, 무한정 추가할 수는 없다.

 

(참고: 여기서 LinkedList의 장점이 드러난다. LinkedList는 메모리가 감당하는 한, 무한정 데이터를 추가할 수 있다. 반면에, ArrayList는 애초에 배열의 크기를 지정하기 때문에 무한정 추가할 수 없다. 또한, 배열의 크기를 과도하게 크게 설정한 경우 공간의 낭비가 생긴다.)

 

그래서 나는 아래 코드처럼 resize() 메서드를 구현해보았다.

모든 부분을 잘 알아두자.

resize()를 void로 선언하여서

Object[] newArray = new Object[size+50]으로 새로운 ArrayList를 정하고 그것의 크기를 size보다 크게 해준다.

그리고 이 새로 만든 newArray라는 ArrayList의 정보를 elementData ArrayList 정보와 일치시켜야 한다.

한편, add함수나 addLast에서는 elementData라는 이름을 사용하고 있으므로,

elementData = newArray 해주어서 배열의 크기 정보를 연동시켜준다


ArrayList관련 강의를 마쳤다.. 다음엔  Linked list

반응형

'자료구조 + 알고리즘' 카테고리의 다른 글

[자료구조] Linked list 데이터 추가 [VisuAlgo.net]  (0) 2020.03.30
[자료구조] Linked list의 구조  (1) 2020.03.28
[자료구조] ArrayList 구현 - size, indexOf [Java]  (0) 2020.03.18
[자료구조] ArrayList 구현 - toString사용, 데이터 확인하기 [Java]  (0) 2020.03.17
[자료구조] ArrayList 구현 - get, 데이터 가져오기 [Java]  (0) 2020.03.16
'자료구조 + 알고리즘' 카테고리의 다른 글
  • [자료구조] Linked list 데이터 추가 [VisuAlgo.net]
  • [자료구조] Linked list의 구조
  • [자료구조] ArrayList 구현 - size, indexOf [Java]
  • [자료구조] ArrayList 구현 - toString사용, 데이터 확인하기 [Java]
히어로맛쿠키
히어로맛쿠키
  • 히어로맛쿠키
    yeny_lab
    히어로맛쿠키
  • 전체
    오늘
    어제
    • 분류 전체보기 (389)
      • 미분류글 (32)
        • ㅇ (2)
      • JAVA (84)
        • Effective Java (1)
        • Application (21)
      • 컴퓨터구조 & OS (28)
      • 자료구조 + 알고리즘 (43)
      • Database (12)
      • 컴파일러 (10)
      • 수학 (33)
        • 미분방정식 (12)
      • 데이터분석과 머신러닝 (38)
      • 기타 (59)
      • yyeeennyy (25)
  • 공지사항

    • ^o^/♡
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.0
히어로맛쿠키
[자료구조] 원소를 무한히 저장하는 ArrayList 구현하기 [JAVA]
상단으로

티스토리툴바