2020/08/27 TIL

Paul Kim·2020년 8월 27일
0

TIL

목록 보기
6/11

Topics Learned

  • Bubble Sort
  • Quick Sort
  • OOP Programming Pattern in JavaScript
  • Logic Problems

Practices Done

  • Bubble Sort 실제 구현 해보기

    • Bubble Sort 는 처음부터 원소를 iterate 하여 다음의 원소와 비교한 뒤 정렬. 각
    • 이미 직전에 iterate 되어 최고 값에 대한 검증을 마쳤기 때문에 iterate 하는 length 는 1 씩 줄어든다.
    • 가장 느린 sort 방법 중 하나이다.
    • 정렬 방식 중에 가장 간단하기 때문에 컴퓨터 공학에 입문할 때 배우게 되는 알고리즘이다.
    • 같은 O(n^2) 라도 insertion 과 같은 조금 더 복잡한 형태의 알고리즘에 비해 비 효율적이다.
    • Big O 표기는 O(n^2) 를 가진다.
  • Quick Sort

    • Quick Sort 는 (코드상으로) 데이터의 가장 첫 번째 숫자나 마지막 숫자를 pivot 으로 선택한 뒤 이것과 비교하여 작은 숫자를 왼쪽의 배열에 정리하고, 같거나 큰 숫자를 오른쪽에 정리하여 이를 재귀 형태로 반복하여 정렬하는 방법이다.
    • 위의 재귀의 개념에서 설명 했듯, divide-and-conquer 방법이다.
    • 효율적인 정렬 방식이다.
    • O(log n)2020/08/27 TIL
  • OOP 프로그래밍 패턴

    • 일반적인 procedural 프로그래밍 패턴의 가독성에 대한 약점과 코드 보안성을 개선하기 위해 나온 프로그래밍 패턴이다.
    • 특정한 기능의 모음집을 object 화 해서 같이 분류될 수 있는 기능을 객체의 메소드 형태로 집어넣는다.
    • object 내 자료구조들은 this keyword 를 이용해서 엑세스 할 수 있다.
    • 외부상으로는 예를들어, eventHandler.메소드명 등을 통해 불러올 수 있다.
    • JavaScript 는 기본적으로 함수형 언어지만 OOP 도 구현해낼 수 있다.
  • Logic Problems

    • Brilliant.com 을 이용하여 앞으로 매일 5개 정도의 사고력 문제를 풀 예정이다.

0개의 댓글