Community

개발자 99% 커뮤니티에서 수다 떨어요!

← Go back

[TIL] IT 5분 잡학사전 #26~29

#book_club
1년 전
642

오늘 TIL 3줄 요약

  • 시간 복잡도의 표기는 같더라도 상황에 초기 데이터 상태나 상황에 따라서 효율은 다름.

  • 큐, 스택은 실제로 존재하는 문법이 아닌 일련의 규칙과도 같음(a.k.a 추상 자료구조)

  • 해시 테이블은 검색 속도를 빠르게 해줌.

TIL (Today I Learned) 날짜

2023.09.02

오늘 읽은 범위

ep.26~29

책에서 기억하고 싶은 내용을 써보세요.

  • 시간복잡도가 모두 N제곱으로 같은 버블 정렬, 선택 정렬, 삽입 정렬. 하지만 초기 데이터 상태에 따라서 처리 속도는 달라질 수 있음.

  • 위에서 부터 쌓고, 위에서부터 데이터를 빼는 것이 스택. (팬케이크) = LIFO (Last In, First Out)

  • ex) 웹 브라우저 뒤로 가기 버튼, 되돌리기 단축키

  • 위로 데이터를 쌓고, 아래에서부터 데이터를 빼는 것이 큐. (버스정류장) = FIFO (First In, First Out) 선입선출!

  • ex) 쇼핑몰 주문 처리 시스템

  • 해시 테이블 검색의 시간 복잡도는 O(1). but 해시 충돌이 있을 경우 달라질 수 있음.

  • 해시 테이블 속도의 비결은 해시 함수.

  • 해시 함수는 키를 인덱스로 바꿔주는 역할을 함.

  • 클린 코드는 읽기만 해도 이 코드의 역할이 무엇인지 알 수 있게 짜여진 것.

  • 클린 코드 tip1 : 변수와 함수 이름은 꼭 의미있는 것으로.

  • 클린 코드 tip2 : 함수 이름은 가급적 동사를 사용.

  • 클린 코드 tip3 : 매개 변수(함수에 값을 전달하는 것)는 너무 많지 않게. 3개 이하 권장.

  • 클린 코드 tip4 : 불린값(true/false)을 인자로 보내지 말 것.

  • 클린 코드 tip5 : 나만 아는 축약어 사용 금지.

오늘 읽은 소감은? 떠오르는 생각을 가볍게 적어보세요

전에는 아무 생각없이 사용했던 해시테이블에 대해 다시 알게 된 시간이었다.

누가봐도 우왓 쩐다! 하는 클린 코드를 작성하는 그 날 까지.. 화잇팅🥹💪

궁금한 내용이 있거나, 잘 이해되지 않는 내용이 있다면 적어보세요.

오늘 읽은 다른사람의 TIL