clamp
Clamp
clamp
글쓰기 관리
전체 방문자
오늘
어제
  • 분류 전체보기 (509)
    • IOS (85)
    • SwiftUI+TCA+Combine (9)
    • RxSwift + MVVM (56)
    • Clean Architecture (12)
    • SWIFT (56)
    • iOS - TDD (2)
    • 디자인패턴 (4)
    • CS (56)
      • 알고리즘 (29)
      • 운영체제 (15)
      • 자료구조 (2)
      • 네트워킹 (4)
      • 기타 (6)
    • 회고 (0)
    • Firebase (18)
    • SwiftUI (10)
    • iOS - UIKit (11)
    • iOS - 오픈소스 (6)
    • 코딩테스트 (166)
      • 프로그래머스 (164)
    • 정보처리기사 (14)
    • GitHub (2)
글쓰기 / 관리자

블로그 메뉴

  • 홈
  • 태그
  • 방명록

공지사항

인기 글

태그

  • Swift
  • ㅅ
  • uikit
  • Q

최근 댓글

최근 글

티스토리

hELLO · Designed By 정상우.
clamp

Clamp

CS/알고리즘

알고리즘 - 유클리드호제법[Swift](최대공약수)

2023. 2. 2. 09:31

최대 공약수

최대 공약수를 구하기 위해 매우 쉬운 공식인 유클리드 호제법은 에우클라이데스라는 그리스의 수학자가 만든 호제법이다.

 

계산 과정

648, 232 라는 수를 a % b = r을 가지고 계산해나간다.

큰 수가 a, 작은수가 b 가 되며, a를 b로 나눈 나머지가 r이된다

계산을 마치면  b -> a // r -> b 가 된다

648 % 232 = 184

232 % 184 = 48

184 % 48 = 40

48 % 40 = 8

40 % 8 = 0

8 % 0 = 0

조건은 b가  0이 아닌 동안이니 b가 0이 되었으므로 a를 return  한다.

소스코드

func GDC(_ num1: Int, _ num2: Int) -> Int{
    var a = num1 > num2 ? num1 : num2
    var b = num1 > num2 ? num2 : num1
    var r = 0
    while b != 0{
        r = a % b
        a = b
        b = r
    }
    
    return a
}

 

저작자표시 비영리 동일조건 (새창열림)
    'CS/알고리즘' 카테고리의 다른 글
    • 알고리즘 - 에라스토스테네스 체(소수찾기)[Swift]
    • 알고리즘 - 조합(Conbinations) 구현[Swift]
    • 그래프, BSF 구현[Swift]
    • 알고리즘 - 그래프 탐색 알고리즘 구현(DFS)[Swift]
    clamp
    clamp
    주니어 iOS개발자의 발악!!!!!!!

    티스토리툴바