[패스트캠퍼스 수강 후기] {코딩테스트인강} 100% 환급 챌린지 3 회차 미션

2020. 10. 21. 14:00IT공부/자료구조&알고리즘 연습

06. 배열 

 배열이란 - Array  

   -> 데이터를 나열하고 각 데이터를 인덱스에 대응하도록 구성한 데이터 구조 

   -> python 에서는 리스트 타입으로 배열 기능을 제공 

 

 배열은 왜 필요할까 

    -> 같은 종류의 데이터를 효율적으로 관리하기 위해 사용 & 순차적으로 저장 

    -> 하나의 연결된 데이터를 저장해 각각의 공간에 대해 인덱스를 매겨 바로 찾을 수 있게끔 하기 위해

 

 배열의 장점 & 단점 

    -> 장점

         빠른 접근 가능 

         첫 데이터의 위치에서 상대적인 위치로 데이터 접근 가능 by 인덱스 번호 

       

    -> 단점 

         데이터 추가와 삭제가 어렵다 

         미리 최대 길이를 지정해야 한다  

 

07. python과 배열 

    파이썬에서는 리스트로 배열 구현이 가능 

     A. 1차원 배열 : 리스트로 구현시 

        data_list = [ 1, ,2, 3, 4, 5, 6 ] 

        data_list  

   결과:  [ 1, ,2, 3, 4, 5, 6 ] 

 

      B. 2차원 배열: 리스트로 구현시 

        data_list = [ [1,2,3,] , [4,5,6,] , [7,8,9] ]

       data_list 

 결과: [[1, 2, 3], [4, 5, 6], [7, 8, 9]] 

 

print (data_list[0]) 

 결과: [ 1, 2, 3 ]

-> 이유는 data_list의 1행의 전체 값을 말한다 

print (data_list[0][0])

  결과: 1

-> 이유는 data_list의 1행1열의 값을 말한다

 

연습문제 

연습1: 위의 2차원 배열에서 9, 8, 7 을 순서대로 출력해보기

 

내 풀이: 9는 data_list의 2행2열에 해당하는 값이고 8는 data_list의 2행1열에 해당하고 

        7은 data_list의 2행0열에 해당하므로 

         print(data_list[2][2],data_list[2][1],data_list[2][0])

 

dataset = ['Braund, Mr. Owen Harris',
'Cumings, Mrs. John Bradley (Florence Briggs Thayer)',
'Heikkinen, Miss. Laina',
'Futrelle, Mrs. Jacques Heath (Lily May Peel)',
'Allen, Mr. William Henry',
'Moran, Mr. James',
'McCarthy, Mr. Timothy J',
'Palsson, Master. Gosta Leonard',
'Johnson, Mrs. Oscar W (Elisabeth Vilhelmina Berg)',
'Nasser, Mrs. Nicholas (Adele Achem)',
'Sandstrom, Miss. Marguerite Rut',
'Bonnell, Miss. Elizabeth',
'Saundercock, Mr. William Henry',
'Andersson, Mr. Anders Johan',
'Vestrom, Miss. Hulda Amanda Adolfina',
'Hewlett, Mrs. (Mary D Kingcome) ',
'Rice, Master. Eugene',
'Williams, Mr. Charles Eugene',
'Vander Planke, Mrs. Julius (Emelia Maria Vandemoortele)',
'Masselmani, Mrs. Fatima',
'Fynney, Mr. Joseph J',
'Beesley, Mr. Lawrence',
'McGowan, Miss. Anna "Annie"',
'Sloper, Mr. William Thompson',
'Palsson, Miss. Torborg Danira',
'Asplund, Mrs. Carl Oscar (Selma Augusta Emilia Johansson)',
'Emir, Mr. Farred Chehab',
'Fortune, Mr. Charles Alexander',
'Dwyer, Miss. Ellen "Nellie"',
'Todoroff, Mr. Lalio']

 

연습2: 위의 dataset 리스트에서 전체 이름 안에 M 은 몇 번 나왔는지 빈도수 출력하기

 

내 풀이:

// 먼저 횟수에 대한 변수 선언 및  초기화 

m_count = 0 

// for문 사용해 
for data in dataset:
    for index in range(len(data)):

   //data[index]는 요소 하나하나 해당 
        if data[index] =='M':

   //count 횟수 1 증가 
            m_count += 1
print(m_count)

 

--> 이번 강의를 통해 배열의 구조에 대해서 정확하게 알 수 있었고 직접 실습문제를 풀어보며 배열의 인덱스도 

      배울 수 있어 좋았습니다.

강의에 대해 정확하게 알고 싶다면   

https://bit.ly/2FgOONG