728x90
반응형
SMALL

전체 글 166

[JAVA] 1929번 소수 구하기

1929번: 소수 구하기 첫째 줄에 자연수 M과 N이 빈 칸을 사이에 두고 주어진다. (1 ≤ M ≤ N ≤ 1,000,000) M이상 N이하의 소수가 하나 이상 있는 입력만 주어진다. www.acmicpc.net 문제 M이상 N이하의 소수를 모두 출력하는 프로그램을 작성하시오. 입력 첫째 줄에 자연수 M과 N이 빈 칸을 사이에 두고 주어진다. (1 ≤ M ≤ N ≤ 1,000,000) M이상 N이하의 소수가 하나 이상 있는 입력만 주어진다. 출력 한 줄에 하나씩, 증가하는 순서대로 소수를 출력한다. 예제 입력 출력 3 16 3 5 7 11 13 알고리즘 제곱근 반복문으로만 풀어서는 시간 초과로 해결하지 못하고 꼭 에라토스테네스의 체 알고리즘을 사용해야 시간 내에 해결할 수 있다. [JAVA] 소수 구하..

PS/BOJ 2024.01.29

[알고리즘] 소수 구하기, 에라토스테네스의 체

에라토스테네스의 체 소수를 구하는 방법 중 하나 i = 2 부터 √N 이하까지 반복하여 자연수들 중 i를 제외한 i의 배수들을 제외시키는 방식 시간복잡도: O(Nlog(log N)) 다음의 그림과 같이 1을 제외하고 2부터 시작하여 2의 배수인 4, 6, 8, 10 .. 는 이미 2를 약수로 가져 소수가 아니므로 제외하고 그 후 3의 배수인 9, 15, 21, 27 .. 들도 이미 3를 약수로 가져 소수가 아니므로 제외하면서 범위 내 소수를 구하는 방식이다. 왜 N 까지가 아니라 √N 까지일까? n = a × b 라고 하고 하면 1 ≤ a, b √ N 하다면 a × b > n 이므로 a와 b 중 적어도..

알고리즘 2024.01.29

[React] useCallback 사용한 성능 최적화

useCallback React Hooks 중 하나로서 useMemo와 같이 Memoization 기법으로 컴포넌트 성능을 최적화시키는 방법이다. useMemo나 memoization을 모른다면 아래의 링크를 통해 꼭 보고 오자! [React] Memoization과 useMemo 사용법 useMemo React Hooks 중에 하나로서 컴포넌트 성능 최적화를 위해 사용한다. 성능 최적화를 위해 사용하는 Hooks에는 useCallback도 있다. [React] useCallback 사용한 성능 최적화 useCallback React Hooks 중 하나로서 mi-dairy.tistory.com useCallback는 첫 번째 인자로 들어간 "콜백함수 그 자체"를 memoization 한다. 즉 콜백함수를..

[React] Memoization과 useMemo 사용법

useMemo React Hooks 중에 하나로서 컴포넌트 성능 최적화를 위해 사용한다. 성능 최적화를 위해 사용하는 Hooks에는 useCallback도 있다. [React] useCallback 사용한 성능 최적화 useCallback React Hooks 중 하나로서 useMemo와 같이 Memoization 기법으로 컴포넌트 성능을 최적화시키는 방법이다. useMemo나 memoization을 모른다면 아래의 링크를 통해 꼭 보고 오자! [React] 성능 최적화를 위 mi-dairy.tistory.com useMemo에서 Memo는 Memoization을 뜻하는데 이때 Memoization이란 동일한 값을 리턴하는 코드를 반복적으로 호출해야 할 때 제일 처음 호출했을 때 해당 값을 메모리에 저장..

[React] useRef를 통해 DOM요소에 직접 접근하기

useRef의 변수 관리 저장공간으로써 사용하는 방법은 아래의 링크를 통해서 보면 된다. [React] useRef는 언제 왜 사용할까? useRef useRef는 함수형 컴포넌트 내에서 사용하며 React Hooks 중에 하나이다. 사용법 useRef를 사용하기 위해선 먼저 다음과 같이 import를 해주어야 useRef 사용이 가능하다. import { useRef } from 'react'; 이렇 mi-dairy.tistory.com 이번에는 useRef를 통해 DOM 요소에 직접 접근하는 방법을 알아볼 것이다. 사용법 const ref = useRef(value); 위의 코드를 통해 ref에는 객체가 반환되게 되는데 그때 반환된 객체를 다음과 같이 태그의 ref 속성으로 넣어주기만 하면 우리는 쉽..

[React] useRef는 언제 왜 사용할까? 무한루프 해결방법

useRef useRef는 함수형 컴포넌트 내에서 사용하며 React Hooks 중에 하나이다. 사용법 useRef를 사용하기 위해선 먼저 다음과 같이 import를 해주어야 useRef 사용이 가능하다. import { useRef } from 'react'; 이렇게 import 된 useRef는 코드에서 다음과 같이 사용된다. const ref = useRef(value); 이때 ref 에는 객체가 반환되게 되는데 그때 반환된 객체는 다음과 같이 생겼다. { current: value } 다음과 같이 useRef의 인자로 넣어준 초기값은 ref 객체 내의 current에 저장되게 된다. 또한 ref 객체는 언제든지 수정이 가능하여 원하는 값으로 바꿔줄 수 있다. const ref = useRef("v..

[JavaScript] Redux 사용법

Redux란? Redux는 JavaScript 상태 관리 라이브러리라 JavaScript든 React든 잘 어울린다. 초기 설정 JavaScript에서 Redux를 사용하려면 따로 설정할 게 없다. React에서 Redux를 사용하려면 index.js에 App.js를 Provider 컴포넌트로 감싸 앱의 다른 컴포넌트에서 store를 사용할 수 있도록 해야한다. import { Provider } from "react-redux"; import store from "./store"; // state가 저장되어 있는 store 파일 위치 ReactDOM.render( , document.getElementById("root") ); 메소드 useSelector() : state 데이터 읽기 useSelec..

[TypeScript] type와 interface의 차이, class

Class 추상(abstract) 클래스 오직 다른 클래스가 상속받을 수 있는 클래스이지만 직접 새로운 인스턴스를 만들 수는 없다. 추상(abstract) 메소드 추상 클래스 내에서는 메소드를 적지 않고 call signature만 작성해야한다. 추상 클래스를 상속받는 클래스들이 반드시 구현(implement)해야하는 메소드이다. 접근 가능한 위치 private : 해당 클래스 내에서만 접근 가능, 자식 클래스에서도 접근 불가 protected : 해당 클래스와 자식 클래스에서 접근 가능 public : 기본값, 모든 클래스에서 접근 가능 상속 방법 : extends abstract class User{ constructor( private firstname : string, private lastnam..

[TypeScript] call signatures, 오버로딩, 다형성, 제네릭

호출 시그니처(Call Signatures) 프로퍼티로 호출 가능한 것을 설명하려면 객체 타입에 Call Signature을 작성할 수 있다. Call Signatures는 다음과 같이 함수의 매개 변수(parameter)와 반환 타입을 지정하여 이 함수가 어떻게 호출되는지 설명해주는 부분을 말한다. const add = (a : number, b : number) => a + b; // 위의 코드에서 a와 b의 타입 지정을 하고 싶지 않다면 call signature 타입을 만들어 사용 // call signature 타입 사용 후 type Add = (a : number, b : number) => number; // call signature const add : Add = (a, b) => a +..

[TypeScript] 타입스크립트의 타입 별칭(type alias)

type 특정 값이나 객체의 값에 대한 타입을 지정해줄 수 있다. 특징 Type alias(타입에 대한 별명)를 만들어줄 수 있다. 타입을 특정한 값을 가지도록 제한할 수 있다. 타입 별칭(Type Alias) object의 타입을 명시적으로 정해주는 방법이며 type 키워드를 사용해서 타입에 이름을 설정해서 사용한다. // Alias 사용 전 const player : { name: string, age?: number } = { name: "name" } // Alias 사용 후 type Age = number; type Player = { name: string, age?: Age } const player : Player = { name: "name", } 아래는 함수에서 return 타입을 지정..

728x90
반응형
LIST