[til] 26장 ~ 29장

·

2 min read

[til] 26장 ~ 29장

오늘 TIL 3줄 요약

  • 규칙개념의 자료구조
  • 해시테이블
  • 클린코드

TIL (Today I Learned) 날짜

2023년 1월 21일

오늘 읽은 범위

  • 26장. 정렬 알고리즘이 뭐죠?
  • 27장. 스택, 큐가 뭐죠?
  • 28장. 해시 테이블이 뭐죠?
  • 29장. 개발자 필수 소양, 클린코드 !

책에서 기억하고 싶은 내용

  • 버블 정렬은 2칸짜리 창문을 놓고 오른쪽으로 1칸씩 밀면서 왼쪽과 오른쪽을 비교하는 방식으로 정렬하며, 좋은 알고리즘은 아니다.
  • 선택 정렬은 전체 데이터 중에서 가장 작은 데이터 또는 가장 큰 데이터의 위치를 따로 기억하는 방식이다.
  • 삽입 정렬 앞에 있는 데이터를 보면서 배치하는 특징이 있다. 포인트는 교환이 아니라 밀어 넣는다는 것이다.
  • 해시 테이블은 배열에 해시 함수라는 것이 세트로 있다. 해시 함수는 우리가 검색할 때 쓰는 키를 숫자, 즉 인덱스로 바꿔 주는 역할을 한다.
  • 큐, 스택은 실제로 존재하는 개념이 아니라 추상 자료구조(ADT)이다.

    • 스택 : 브라우저의 뒤로가기버튼, 되돌리기 단축키(Ctrl + Z)
    • 큐 : 쇼핑몰 주문처리 시스템
  • 클린코드

    • 의미있는 변수, 함수의 이름을 적절히 사용하라
    • 함수 이름은 가급적 동사로 지어라 (함수는 1가지 액션만 잘할 수 있으면 된다.)
    • 매개변수는 너무 많이 쓰지 마라 (니꼬쌤은 3개 이하를 지향.)
    • 불린값을 인자로 보내지 마라
    • 축약어를 쓰지 마라

오늘 읽은 소감

  • 알고있다고 생각했던 개념에 대해 부가적인 정보를 더 알 수 있어서 좋았다.
  • 클린코드 작성에 대한 안내 또한 시야를 트이게 하는 좋은 구간이었다.
  • 해시충돌을 더 이해하기 위해 추가 정보를 찾아봐야 겠다.