일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | |
7 | 8 | 9 | 10 | 11 | 12 | 13 |
14 | 15 | 16 | 17 | 18 | 19 | 20 |
21 | 22 | 23 | 24 | 25 | 26 | 27 |
28 | 29 | 30 |
- linear dependence
- 일차변환
- 빅오메가
- nonhomogeneous linear system
- nontrivial solution
- Big-Oh notation
- homogeneous linear system
- recursive algorithms
- Big Omega
- matrix fo a linear transformation
- 빅세타
- 알고리즘 분석의 실례
- one-to-one
- matrix trnasformations
- python
- 페이지 겹칩
- 빅오 표기법
- includepdf
- 랜덤 순서 배열
- NumPy
- trivial solution
- 코틀린 Hello World!
- 코틀린 시작하기
- 재귀함수
- Big Theta
- 이진 탐색
- Big-Oh 예제
- 배열 섞기
- itertools
- Big-O 예제
- Today
- Total
목록분류 전체보기 (158)
코딩 연습
c 언어에서 indent width 를 4로 설정하는 법 ~/.spacemacs 파일을 열어서 ";; Do not write anything~" 바로 윗 줄에 (setq c-default-style "stroustrup") 를 추가해주면 됨 또한 line number 를 표시해주고 싶으면 "dotspacemacs-line-numbers" 를 찾아서 false 부분을 t 혹은 'relative 로 바꾸면 됨
macvim 에서 spacevim 을 사용하고 있는데, spacevim 설정 파일에서 줄간격을 조정해도 반영이 되지 않았다. 이 경우 macvim 의 메뉴 중 Edit - Startup Settings 를 선택하여 맨 아래에 set linespace=2 를 삽입하면 된다.
MacVim 을 실행한 후 메뉴에서 Edit - Startup Settings 를 선택한 후, 마지막 줄에 다음을 추가한다. if has("gui_running") autocmd VimLeave * :!open -a iTerm.app endif
linux 에서 권리자 권한 실행 (sudo) 일 때 시간이 오래 걸리는 경우는 /etc/hosts 파일을 열어서 127.0.0.1 오른쪽을 hostname 으로 바꿔주면 된다. hostname 은 command line 에서 hostname 을 치면 알아낼 수 있다.
~/.spacemacs 파일을 열고 (custom-set-variables 라고 되어 있는 부분을 찾는다. 그 부분을 아래와 같이 바꿔주면 된다. (custom-set-variables ;; custom-set-variables was added by Custom. ;; If you edit it by hand, you could mess it up, so be careful. ;; Your init file should contain only one such instance. ;; If there is more than one, they won't work right. '(spacemacs-theme-custom-colors '((bg1 . "#001628") (act1 . "#001628") (bg2..
spacevim 을 설치하고 나면 기본 indent width 가 2 로 설정되어 있다. 이 설정을 바꾸려면 .SpaceVim.d 디렉토리에 있는 init.toml 파일을 열어서 [options] 아래쪽에 다음을 추가해 주면 된다. default_indent = 4 이렇게 하면 indent width 가 4로 되는 것을 확인할 수 있다. 그런데 이상하게 중괄호를 열면 자동으로 닫힘 중괄호가 생기고, 이 상태에서 엔터키를 누르면 자동으로 indent 가 되지 않는다. 이것을 고치려면 [[layers]] name = 'autocomplete' 밑에 다음을 추가해 주면 된다. auto-completion-return-key-behavior = "smart"
카드 게임을 만들려고 한다면 일단 카드를 섞어야 하는 기능이 있어야 하는데, 이것을 어떻게 할까 생각해 보았다. 처음엔 단순히 난수 생성을 해서 해결하면 되겠다는 막연한 생각을 했었는데, 막상 구체적인 방법에 대해서 생각해보니 난수 생성은 같은 수를 만들어 낼 수도 있기 때문에 기본의 배열의 순서만 랜덤하게 뒤바꾸는 작업에는 적절하지 않다는 것을 알게 되었다. 그래서 다음과 같은 방법을 생각하게 되었다. 1부터 10으로 이루어져 있는 길이 10의 배열 arr 의 순서를 임의로 바꾸는 경우를 생각해 보자. 1. 0부터 9까지의 정수들로 난수를 생성한다. 2. 생성된 난수에 해당하는 배열의 요소를 배열의 첫 번째 요소와 바꾼다. 예를 들어, 난수에서 4가 생성되었다면, arr[4] 와 arr[0] 의 요소를..
1. TRY KOTLIN 페이지 이용하기사실 코틀린을 가장 빠르게 시도할 수 있는 방법은 TRY KOTLIN 페이지에 접속하는 것이다. 이 페이지에 접속하면 다음과 같은 화면을 볼 수 있고, 오른쪽 창에 아래 그림과 같은 코틀린 코드를 입력한 후, 오른쪽 위쪽의 Run 버튼을 눌러주면 아래 쪽에서 그 결과를 확인할 수 있다. 2. IntelliJ IDEA 사용하기두 번째 방법은 JetBrains 의 IntelliJ IDEA 를 이용하는 방법이다. IDEA 다운로드 페이지에서 자신의 OS 를 선택한 후에 Community 버전을 다운로드 받고 설치하도록 하자. (community 버전은 무료다.) 설치 후에 실행하면 아래와 같은 창이 나온다. 여기서 Create New Project 를 선택한다. 그럼 다..
주어진 배열에서 특정한 요소 target 을 찾아내는 상황을 가정해 봅시다. 가장 쉽게 떠 올릴 수 있는 방법은 배열의 요소 하나하나와 target 값이 같은지를 순차적으로 모두 비교하는 것입니다. 만약 배열의 크기가 $n$ 이라고 한다면 이 알고리즘의 시간복잡도를 Big-Oh notation을 이용하요 나타낸다면 $O(n)$ 이 되겠죠. 그렇지만 이것보다 훨씬 빠르게 target 을 찾아내는 방법도 있습니다. 우리가 살펴봐야 할 요소들의 개수를 절반으로 줄여가면서 탐색을 하는 것이죠. 이런식으로 탐색하는 방법이 바로 이진 탐색 알고리즘입니다. 다만 이진 탐색(binary search)은 오름 차순으로 정렬된 배열에만 적용할 수 있다는 단점이 있습니다. (앞으로 내용을 보시면 아시겠지만 오름차순으로 정렬..
이전에 알아봤던 Big-Oh Notation 의 실례들을 살펴보자. $O(1)$파이썬의 list 클래스에서는 각 리스트의 길이를 저장하고 있는 변수가 존재하여 리스트 요소 하나하나를 반복적으로 접근하여 세지 않고도 그 길이를 즉각 반환하여 준다. 이런 측면에서 본다면 리스트의 길이를 구하는 것은 $O(1)$ 에 해당된다고 할 수 있다. 또한 파이썬의 리스트는 array-based sequences 로 실행되기 때문에 각각의 요소들은 연속적인 저장 공간에 하나씩 저장이 되고, 이들은 모두 인덱스를 이용하여 직접 접근할 수 있다. 예를 들어, input_data[i] 라고 하면 input_data 라는 리스트의 인덱스 i 인 저장소의 값을 그대로 반환해 준다. 따라서 이것 역시 $O(1)$ 에 해당된다고 할..