TIL
20231027 TIL
김빵그
2023. 10. 27. 18:54
Today 요약
[✅] 프로그래머스 코딩테스트 2문제
[✅] Do it 플러터 다트 ~100P
[✅] 옵시디언 정리
배운 점
1. JavaScript
1. 유클리드 호제법
- 2개의 자연수 또는 최대공약수를 구하는 알고리즘의 하나이다
- 호제법 ? 두 수가 서로 상대방 수를 나누어 결국 원하는 수를 얻는 알고리즘을 나타내며, 2개의 자연수 a, b에 대해 a를 b로 나눈 나머지를 r이라 하면 a와 b의 최대공약수는 b와 r의 최대공약수와 같다
- 알고리즘
- 입력으로 두 수 m,n (m > n)이 들어온다
- n 이 0이라면 m을 출력하고 알고리즘 종료
- m이 n으로 나누어 떨어지면 n을 출력하고 알고리즘 종료
- 그렇지 않으면 m을 n으로 나눈 나머지를 새롭게 m에 대입하고 m과 n을 바꾼후 다시 나누어 떨어지는 지 확인
public static int gcd(int p, int q)
{
if (q == 0) return p;
return gcd(q, p%q);
}
https://ko.wikipedia.org/wiki/%EC%9C%A0%ED%81%B4%EB%A6%AC%EB%93%9C_%ED%98%B8%EC%A0%9C%EB%B2%95
2. Dart
2-1 Dart List 타입
- 특정한 타입의 데이터만 저장하는 리스트를 선언할 때는 제네릭(Generic)으로 명시해주면 된다
- 제네릭은 클래스나 메서드에서 사용할 내부 데이터 타입을 컴파일 타임에 미리 지정하는 방법이다