ABOUT ME

chanho Yoon
chyoon0512@gmail.com


깃허브


블로그 이사!

이 블로그로 이사했어요!!


Today
-
Yesterday
-
Total
-
  • 리스트 (List) 파이썬 배열
    Programming/자료구조 2020. 2. 24. 20:52
    반응형

    배열?

    • 데이터를 나열하고, 각 데이터를 인덱스로 접근할 수 있도록 구성한 데이터의 구조이다.

    배열이 필요한 이유

    • 같은 종류의 데이터를 효율 관리를 위해서 사용한다.
    • 같은 종류의 데이터를 순차적으로 저장

    배열의 장점

    • 인덱스 번호로 빠른접근이 가능하다
    • 데이터의 위치에 대해 직접적인 접근(Access)가 가능하다

    배열의 단점

    • 미리 배열의 크기를 지정해야하고 그로인해 고정되어있는 배열의 크기 때문에 데이터의 추가 및 삭제가 매우 불편
    • 데이터 추가 삭제 발생시에 놀고 있는 저장공간이 생길수도 있고 중간 값의 데이터를 삭제 했을 경우 앞으로 당겨와야한다든지의 문제점이 있어 불편

    리스트?

    • 파이썬에서 사용되는 자료구조
    • 리스트는 배열과 같이 다중 자료형이지만 다른 속성을 가지고 있다.
    • 리스트에서의 인덱스는 그저 몇 번째 데이터정도인가를 의미

    리스트의 장점

    • 포인터를 통하여 다음 데이터의 위치를 가르키고 있어서 삽입 삭제가 쉽다. 쉽게 설명하자면 동적이므로 배열과 다르게 크기가 정해져있지 않음.

    리스트의 단점

    • 검색 성능이 좋지 못한다. 이유는 배열은 데이터의 위치에 대해서 직접적인 접근이 가능하지만, 리스트는 직접 접근이 불가능하고 처음부터 몇 번째인지 일일이 세어가면서 위치를 찾기 때문
    • 만약 데이터가 삽입 삭제 수정 없이 확실하게 정해져 있다면 배열(Array)이 더 효율적

     

     

    리스트를 사용하지 않았을 때와 사용했을 때의 차이

    • 만약 과일 종류를 담은 데이터를 전체적으로 뿌려줘야 하는데 과일종류가 100가지가 넘는다 했을 때 리스트를 사용하지 않고 과일1, 과일2, 과일3... 과 같은 방식으로 출력을 한다고 가정하면 얼마나 비효율적인지 생각만해도 알 것이다.

    리스트 사용 전 / 후


    파이썬과 리스트 사용

    • 사용 예시
      • 변수명 = ["index1", "index2", "index3"]  -  1차원 배열 리스트
      • 변수명 = [["index1", "index2"], ["index3", "index4"]]  -  2차원 배열 리스트

    • 활용 - 각각의 리스트 인덱스에서 특정 문자열 개수 구하기

    각각의 리스트 인덱스에서 특정 문자열 개수 구하기

     

    'Programming > 자료구조' 카테고리의 다른 글

    이중 연결 리스트 - python3  (0) 2020.03.05
    단일 연결 리스트 - python3  (0) 2020.02.27
    Stack(스택) - python3  (0) 2020.02.26
    Queue(큐) - python3  (0) 2020.02.25

    댓글

Designed by Tistory.