[ZB 데이터스쿨 11기] 3주차 학습노트

InSung-Na·2023년 1월 22일
0

Study Note

목록 보기
3/18
post-thumbnail

📌3주차 학습내용 요약

자료구조

  • 컨테이너 자료형 : 여러 개의 데이터가 묶여있는 자료형 구조
  • 자료 구조 : 컨테이너 자료형의 데이터구조

인덱스를 이용한 데이터조회

  • 인덱스 : 컨테이너형 자료에는 데이터의 위치에 해당하는 번호가 지정된다(단, 0부터 시작
  • 인덱싱 : 인덱스를 이용하여 하나의 아이템을 조회하는 것
  • 슬라이싱 : 인덱스를 범위로 지정하여 여러 아이템을 조회하는 것
    list[start:end:step] : 인덱스가 start <= idx < end에 속하는 데이터만 step간격으로 반환

📌리스트

  • 배열과 같이 여러 개의 데이터를 나열한 자료구조
  • 어떤 자료형이든 리스트 안에 넣을 수 있다. 리스트 안에 리스트도 가능

아이템 추가

  • list.append(DATA) : 리스트 마지막에 데이터 추가
  • list.insert(IDX, DATA) : idx 위치에 데이터 추가

아이템 삭제

-list.pop(IDX) : idx 위치의 아이템 삭제 후 반환

  • del list[IDX] : idx 위치의 아이템 삭제
  • list.remove(DATA) : 해당 아이템 삭제

리스트 확장

  • list1.extend(list2) : list1에 list2를 추가
  • list1 + list2 : 덧셈연산으로 새로운 리스트 반환
  • list * num : num만큼 list생성

리스트 정렬

  • list.sort(reverse=True|False) : 반환X, 리스트의 정렬
  • sorted(list, reverse=True|False) : 정렬된 리스트 반환

리스트 뒤집기

  • list.reverse() : 반환X, 리스트의 순서 반전
  • list[::-1] : 순서를 반전시킨 리스트반환

아이템 위치 찾기

  • list.index(DATA) : 해당하는 아이템의 인덱스 반환

아이템 갯수확인

  • list.count(DATA) : 해당하는 아이템의 갯수 반환

📌튜플

  • 리스트와 비슷하지만, 데이터 변경 불가
  • 리스트에 수행했던 대다수의 함수 사용가능

튜플->리스트 자료형 변환과 데이터정렬


📌딕셔너리

  • 키(key)와 값(value)를 이용하여 데이터를 관리한다

딕셔너리 조회

  • dict[KEY], dict.get(KEY) : key를 이용한 value 조회
  • dict.keys() : 모든 키 반환
  • dict.values() : 모든 값 반환
  • dict.items() : 모든 아이템(키, 값) 반환

딕셔너리의 추가 및 수정

  • dict[KEY] = VALUE
  • 기존에 KEY가 있으면 수정, 없으면 추가

딕셔너리 아이템 삭제

  • dict.pop(KEY) : 아이템 삭제 후 반환
  • del dict[KEY] : 반환X, 아이템 삭제
  • dict.clear() : 딕셔너리의 모든 아이템 삭제

📌알고리즘

선형검색과 보초법

  • 선형으로 나열된 데이터를 스캔하면서 원하는 값을 찾는 것
  • 보초법 : 마지막 인덱스에 원하는 값을 넣어서 종료과정을 간략화

이진검색

  • 정렬되어 있는 자료구조에서 중앙값과의 비교로 데이터를 검색

순위

  • 값의 크고 작음을 기준으로 우열을 결정하는 것

버블정렬

  • 처음부터 끝까지 인접한 데이터끼리 비교하여 옮기면서 정렬하는 것

삽입정렬

  • 정렬되어 있는 자료구조에 다음 데이터의 위치를 찾아서 추가한다

선택정렬

  • 주어진 리스트 중에 최소값을 찾아, 그 값을 맨 앞에 위치한 값과 교체하는 방식으로 자료를 정렬하는 알고리즘

최대최소값

  • 자료구조에서 가장 큰 / 작은 값을 찾는 것

최빈값

  • 빈도수가 가장 높은 데이터 찾기

근삿값

  • 특정 값에 가장 가까운 값 찾기

재귀함수

  • 자신을 다시 호출하는 함수

유클리드 호제법

하노이의 탑

병합정렬

퀵정렬



📌학습범위

Part3. DataStructure&Algorithm의 자료구조1,2 & 알고리즘1,2

0개의 댓글