반응형

분류 전체보기 141

[알고리즘] 02. 에라토스테네스의 체

소수를 판별하는데 자주 쓰이는 에라토스테네스의 체를 정리해보자. 벨로그에 정리했었지만 다시 한번 정리해보려고 한다. 소수(Prime number)란? 1보다 큰 자연수 중 1과 자기 자신만을 약수로 가지는 수를 소수라고 정의한다. 소수를 작은 순서대로 나열하면 2, 3, 5, 7, 11, 13, 17, 19, 23...이며 코딩테스트를 준비한다면 바로바로 생각할 수 있게 2, 3, 5, 7까진 외워두는 것이 좋다. 소인수분해(소수의 곱) 문제를 풀 때도 소수는 중요한 부분을 차지한다. 반대로 소수가 아닌 수는 합성수라고 한다. 에라토스테네스의 체(Sieve of Eratosthenes) 에라토스테네스의 체는 고대 그리스의 수학자인 에라토스테네스가 발견한 소수를 구하는 방법으로 2의 배수, 3의 배수 등을..

[Python] 데이터사이언스를 위한 NumPy - (2) 인덱싱, 슬라이싱 Ⅰ

NumPy의 꽃 Indexing과 Slicing이다. 다차원 배열에서 사용자가 원하는 요소만 정확히 골라내기 위해선 Indexing과 Slicing에 대한 이해가 필요하다. NumPy 배열를 다룰 때는 기본적으로 Python 시퀀스처럼 다루면 되므로 크게 어렵지 않다. 이번 글에서는 기본 인덱싱을 알아보자. 기본 인덱싱(Basic indexing) 단일 요소 인덱싱(Single element indexing) 단일 요소를 인덱싱할 때는 Python 인덱싱과 정확히 똑같이 동작한다. import numpy as np x = np.array([1, 2, 3, 4, 5, 6, 7, 8, 9]) # 1 print(x[4], x[-2]) # 2 print(x.shape) x.shape = (3, 3) print(..

[Python] 데이터사이언스를 위한 NumPy - (1) 배열 생성

NumPy(Numerical Python)는 수치해석과 통계를 위한 오픈 소스 파이썬 라이브러리로 단독적으로 쓰이기도 하지만 보통 Scipy, Pandas, matplotlib과 같은 과학이나 수학 관련 패키지에서 광범위하게 사용된다. 원래 파이썬은 수치해석이나 통계같은 복잡한 계산을 하기 위한 언어가 아니었지만 numpy가 이런 점을 보완시켰다. 상당 부분 C언어와 포틀란으로 작성돼 있어 속도도 빠른 편이다. NumPy는 배열을 계산하기 위해 ndarray(n차원 array)라는 객체를 제공하는데, ndarray객체를 이용해서 수학의 행렬 연산과 유사한 연산을 수행할 수 있다. NumPy 설치하기 pip install numpy 넘파이는 위의 명령어로 간단히 설치할 수 있다. 리눅스 기반으로 만들어진 ..

[프로젝트] 06. DRF 경매 서비스 - 20세기 박물관

레트로한 느낌이 나는 전자제품이나 패션을 사고 파는 경매 서비스 프로젝트 정보 프로젝트: 경매 서비스 - 20세기 박물관 개발기간: 2023.05.08 - 2023.05.14 ( 7일 ) 주요 기능: 경매 기능, 경매 로그, 북마크, JWT 인증 역할 Github 레포지토리 관리 총괄 백엔드 프론트엔드 프로젝트 발표 기술스택: 프로젝트 구성 ★ 파일구조 관리 앱 centurymuseum, 메인 컨텐츠 앱 article, 유저 관리 앱 user으로 구성 . ├── article │ ├── migrations │ ├── admin.py │ ├── models.py │ ├── scheduler.py │ ├── serializers.py │ ├── urls.py │ └── views.py ├── centurym..

[DRF] dj-rest-auth - email인증 및 User모델 필드 커스텀하기

지난 프로젝트에서 회원가입 시 이메일을 인증해야 가입이 완료되는 기능을 구현하기 위해 drf의 서드파티인 dj-rest-auth를 사용했다. dj-rest-auth는 로그인, 로그아웃, 비밀번호 재설정, 소셜 미디어 인증 등의 사용자 인증에 관련된 모델을 미리 만들어 둔 프로젝트다. django-rest-framework 라이브러리로 만들어졌으므로 설치되어 있어야 한다 적용방법 # 1. dj-rest-auth 설치 pip install dj-rest-auth # settings.py INSTALLED_APPS = ( ..., 'rest_framework', 'rest_framework.authtoken', ..., 'dj_rest_auth' ) # user/urls.py urlpatterns = [ #...

[CSS] 03. CSS 핵심 (3)

Chapter 03. CASCADE CSS는 Cascading Stylesheet의 약자다. 여기서 cascade는 명사로는 다단으로 된 폭포를 의미하고 동사로는 상명하달 비슷한 의미를 가지고 있다. 즉 CSS는 여러 태그에 붙은 스타일의 속성이 겹칠 경우 순서를 정해서 차례로 적용하는 방식으로 작동한다. 위에서부터 (1) 브라우저가 기본적으로 페이지에 적용하는 스타일시트, (2) PC유저가 로컬에 적용한 스타일, (3) 작성자가 적용한 스타일, (4) 작성자가 !IMPORTANT를 선언한 스타일, (5) PC유저가 !IMPORTANT로 로컬에 적용한 스타일 로 된 레이어가 있다. 이중 !IMPORTANT가 선언되어 있는 레이어가 가장 우선순위가 높다. 따라서 각 속성에서 높은 우선순위에 있는 속성값이 ..

[CSS] 02. CSS 핵심 (2)

Chapter 02. display속성, 선택자 이번에는 자주 쓰는 display 속성인 블록과 인라인의 차이에 대해서 알아보고 기타 display 속성들과 함께 css 선택자를 정리한다. Display 속성 CSS에서 display속성은 화면에서 element들이 어떻게 보여지는지를 결정한다. 우선 HTML의 요소들은 크게 블록(block)요소과 인라인(inline)요소으로 나눌 수 있다. , , ~, 등의 블록 요소는 하나의 태그가 브라우저에서 좌우 공간을 다 차지하면서 독립적인 공간을 가지는 요소다. 따라서 블록 요소 아래에 다른 태그를 쓰면 다음 줄에 요소가 나타난다. 이와 달리 , , 등의 인라인 요소는 하나의 태그가 브라우저에서 크기를 가질 수 있는 그 영역만 차지해 좌우로 다른 태그들이 나란..

[AWS] Amazon Web Services - (4) Amazon VPC

Chapter 05. Amazon Virtual Private Cloud (Amazon VPC) Virtual Private Cloud(VPC) 즉, 가상 사설 클라우드는 개인 혹은 기관 만의 작은 가상 데이터 센터를 구축(내 나와바리 만들기)하는 것이라고 생각하면 쉽다. VPC가 없었던 시절, 우리가 EC2 인스턴스들을 만들면 우리도 모르는 아마존 서버 어딘가에 인스턴스들이 여기저기 퍼져 있었다고 한다. 즉 AWS를 이용하던 회사A의 인스턴스와 회사B의 인스턴스가 같은 네트워크를 사용하고 있었다는 말이다. 그러다 2009년 VPC 서비스를 출시하고 난 이후부터 회사A와 회사B가 서로 완전히 격리된 독자적인 네트워크 시스템을 사용할 수 있게 되었다. 현재는 EC2 인스턴스를 생성할 때 아래와 같이 VPC..

[AWS] Amazon Web Services - (3) EC2

Chapter 04. Amazon EC2 (Amazon Elastic Compute Cloud) Amazon Elastic Compute Cloud, 즉 Amazon EC2는 'Elastic'이라는 단어처럼 컴퓨팅 용량을 유연하게 늘렸다 줄였다 할 수 있는 IaaS방식 클라우드 서비스다. EC2에서 필요한 만큼의 가상 서버를 빌리면 EC2에서 보안 및 네트워킹을 구성해주고 스토리지를 관리할 수 있게 해준다. 쉽게 말해 가변적인 용량을 가진 가상의 깡통 컴퓨터를 빌려준다고 보면 된다. 그 가상 컴퓨터에 OS든 소프트웨어든 웹 애플리케이션이든 입맛에 맞게 설치해서 사용할 수 있는 것이다. EC2의 기능(features of EC2) 인스턴스(instance) 더보기 AWS에서 제공하는 하나의 컴퓨터 단위를 ..

[AWS] Amazon Web Services - (2) IAM

Chapter 03. Identity and Access Management (IAM) IAM(AWS Identity and Access Management)는 AWS내의 ID에 따라 AWS 리소스에 대한 액세스를 제어하는 핵심 인프라 서비스다. 계정을 처음 생성하고 로그인하면 루트 사용자(root user)로 접속하는데, 이 루트 사용자는 AWS 서비스 및 계정 리소스에 모든 액세스 권한을 가지고 있다. 이 root user대신 필요한 만큼의 권한만 가진 IAM유저를 생성해 필요한 서비스에 활용할 수 있다. 이 IAM 유저를 생성하고 관리하는 것이 IAM이다. AWS는 보안 이슈로 인해 오직 root user만 수행할 수 있는 일부 작업들을 제외하고는 전부 IAM유저를 사용해 작업하도록 강력하게 권고하..

반응형