-
201014 - TILTIL/2021 2020. 10. 15. 02:01
오늘 유심히 복습한 부분은
- ValueBinding Pattern
- Expression Pattern
- Optional Pattern
- Operator
- Loop Statement
- removeFirst, removeLast, PopLast 메서드의 차이를 공부했다.
Optional Pattern을 이해하기 위해서는 Optional이 Enumeration이라는 것을 알아야 했다.
그리고 어제 복습했던 Enumeration Pattern을 알고 있어야 했다.
for-in 반복문으로 이러한 모양을 출력하는 방법도 공부했다
removeFirst, removeLast, popLast
removeFirst, removeLast는 앞의 element를 지우느냐 뒤의 element를 지우느냐의 차이가 있었는데 여기서 중요한 건 메모리 관점에서 배열을 앞에서 지우게 되면 나머지 부분을 앞으로 채워야 하기 때문에 O가 O(n)이 된다.
하지만 뒤에서 지우게되면 이러한 작업이 필요가 없기 때문에 O(1)이 된다. 두 가지의 결과가 같다면 Last를 사용하는 것이 훨씬 좋다.
PopLast는 Optional을 리턴하기 때문에 removeLast, removeFirst가 가진 문제점인 빈 배열에서 사용하면 크래쉬가 발생하는 문제를 없앨 수 있다.
728x90'TIL > 2021' 카테고리의 다른 글
201018 - TIL (1) 2020.10.18 201016 - TIL (0) 2020.10.17 201013 - TIL (0) 2020.10.14 201012 - TIL (0) 2020.10.13 201009 - TIL (1) 2020.10.10