검색 본문
namu.wiki 서로소 - 나무위키 밖에 없다고 나타낼 수도 있다. 두 정수 aaa, bbb에 대해, 아래의 세 명제는 서로 동치이다. 이 둘이 서로소 두 수의 최대공약수가 111 두 수의 최소공배수가 ababab 서로소를 나타내는 방법은 수직 표현과 같은... 정수론 (relatively prime, coprime) 집합론 (disjoint) 관련 문서 2024.05.09 웹문서 검색 더보기 약수(수학) - 나무위키 르베그 적분 - 나무위키 100.daum.net 백과사전 서로소 서로소(서로素)는 다음과 같은 뜻을 갖는다. 서로소는 공약수가 1뿐인 두 정수나, 공약수가 0이 아닌 상수뿐인 두 다항식이나, 환 전체를 생성하는 두 아이디얼의 관계이다. 서로소는 공통으로 포함하는 원소가 없는 두 집합의 관계다. 서로소 합집합 동음... 백과사전 검색 더보기 출처: 위키백과
82cook.com entiz read 수학) 짝수와 홀수는 항상 서로소이다? ::: 82cook.com 자유게시판 중1 수학문제인데요 틀리는걸 고르는 문제인데 해답지를 보니 짝수와 홀수는 항상 서로소이다 (O) 합성수는 2개의 소인수를 갖는다(X) 답이 두개 아닌가요 6과 9는 서로소가 아니잖아요. 2024.04.25 blog.naver.com Traveler hyuning ✈️ [강릉펜션] ‘초당 서로소’ 강문해변 / 신상 자쿠지 독채숙소 50 서로소 초당 강릉신축펜션 강릉감성숙소 강릉 자쿠지펜션 서로소 초당 강원 강릉시 난설헌로 209 서로소 230,000~490,000 체크인 15:00 체크아웃 11:00 서로소 초당 자쿠지펜션 강릉 서로소 강릉감성펜션 - 서로소 서로가 소중한시간 초당서로소 입니다. seoroso.co.kr 강릉 여행에서 빠질 수 없는 경포대, 강문... 2024.05.22 블로그 검색 더보기 suetudy0919.tistory.com SUETUDY [알고리즘] 그래프 이론 - 서로소 집합(Disjoint Sets) 그래프(Graph) 그래프(Graph)란? 노드(Node)와 노드 사이에 연결된 간선의 정보를 가지고 있는 자료구조를 의미한다. 알고리즘 문제를 접했을 때 '서로 다른 개체(혹은 객체)가 연결되어 있다.'는 말이 나오면 가장 먼저 그래프 알고리즘을 떠올려야 한다. 예를 들어 '여러 개의 도시가 연결되어 있다.'와 같은 내용이 등장하면 그래프 알고리즘을 의심해 봐야 한다. 트리(Tree) 자료구조 트리 자료구조는 부모에서 자식으로 내려오는 계층적인 모델에 속한다. 컴퓨터공학 분야에서 트리 자료구조는 방향 그래프로 간주된다. 그래프 트리 방향성 방향 그래프 혹은 무방향 그래프 방향 그래프 순환성 순환 및 비순환 비순환 루트 노드 존재 여부 루트 노드가 없음 루트 노드가 존재 노드간 관계성 부모와 자식 관계 없음 부모와 자식 관계 모델의 종류 네트워크 모델 계층 모델 그래프 구현 방법 인접 행렬(Adjacency Matrix) 인접 리스트(Adjacency List) 방식 2차원 배열을 사용하는 방식 리스트를 사용하는 방식 메모리 공간 O(V^2) O(E) A에서 B로 이어진 간선의 비용 O(1) O(V) 사용 알고리즘 플로이드 워셜 알고리 다익스트라 최단 경로 알고리즘(큐) 적합한 사용 예(최단 경로) 노드 개수가 적은 경우 노드와 간선의 개수가 많은 경우 * V: 노드의 개수, E: 간선의 개수 서로소 집합(Disjoint Sets) 서로소 집합이란 공통 원소가 없는 두 집합을 의미한다. 예를 들어 집합 {1, 2}와 집합 {3, 4}는 서로소 관계이다. 반면에 집합 {1, 2}와 집합 {2, 3}은 2라는 원소가 두 집합에 공통적으로 포함되어 있기 때문에 서로소 관계가 아니다. 서로소 집합 자료구조란 서로소 부분 집합들로 나누어진 원소들의 데이터를 처리하기 위한 자료구조라고 할 수 있다. 서로소 집합 자료구조는 union과 find 이 2개의 연산으로 조작할 수 있다. union(합집합) 연산은 2개의 원소가 포함된 집합을 하나의 집합으로 합치는 연산이다. f 경로 압축 기법(Path Compression) 하지만 이러한 find 함수는 경로 압축(Path Compression) 기법을 적용하면 시간 복잡도를 개선시킬 수 있다. 경로 압축은 find 함수를 재귀적으로 호출한 뒤에 부모 테이블값을 갱신하는 기법이다. 기존의 find 함수를 다음과 같이 변경하면 경로 압축 기법의 구현이 완료된다. def find_parent(parent, x): if parent[x] != x: parent[x] = find_parent(parent, parent[x]) return parent[x] 이렇게 함수를 수정하면 각 노드에 대하여 서로소 집합을 활용한 사이클 판별 서로소 집합은 다양한 알고리즘에 사용될 수 있다. 특히 서로소 집합은 무방향 그래프 내에서의 사이클을 판별할 때 사용할 수 있다는 특징이 있다. 앞서 union 연산은 그래프에서 간선으로 표현될 수 있다고 했다. 따라서 간선을 하나씩 확인하면서 두 노드가 포함되어 있는 집합을 합치는 과정을 반복하는 것만으로도 사이클을 판별할 수 있다. 알고리즘은 다음과 같다. 각 간선을 확인하며 두 노드의 루트 노드를 확인한다. 루트 노드가 서로 다르다면 두 노드에 대하여 union 연산을 수행한다. 루트 노드가 서로 같다면 사이클(Cycle 2 서로소 집합이란 공통 원소가 없는 두 집합을 의미한다. 예를 들어 집합 {1, 2}와 집합 {3, 4}는 서로소 관계이다. 반면에 집합 {1, 2}와 집합 {2, 3}은 2라는 원소가 두 집합에 공통적으로 포함되어 있기 때문에 서로소 관계가 아니다. 서로소 집합 자료구조란 서로소 부분 집합들로 나누어진 원소들의 데이터를 처리하기 위한 자료구조라고 할 수 있다. 서로소 집합 자료구조는 union과 find 이 2개의 연산으로 조작할 수 있다. union(합집합) 연산은 2개의 원소가 포함된 집합을 하나의 집합으로 합치는 연산이다. f 알고리즘 사이클 서로소 코딩테스트 서로소 집합 이코테 사이클 판별 서로소 집합 알고리즘 2024.06.01 jaehee1007.tistory.com 나의 개발 발자취 상호베타적(서로소) 집합과 유니온 파인드 알고리즘 상호베타적(서로소) 집합이란? 상호베타적 집합(또는 서로소 집합: Disjoint Set)이란 교집합이 없는 집합관계를 의미한다. 상호베타적 집합은 다음과 같이 트리 형태로 표현한다. 집합 A와 B는 교집합이 존재하지 않으므로 상호베타적 집합이라고 할 수 있다. 상호베타적 집합 표현하기 상호베타적 집합은 위에서 봤듯 트리 구조로 표현할 수 있다. 이에 대해 더 자세히 알아보도록 하자. 대표원소 상호베타적 집합에서 각각의 집합에는 대표원소라는 것이 존재한다. 대표원소는 트리의 루트노드에 해당한다. 상호베타적 집합을 배열로 구현하기 트리구조로 표현한 상호베타적 집합은 배열로 구현할 수 있다. 방법은 간단하다. 배열에 자신의 부모 노드에 해당하는 원소값을 넣으면 된다. 루트노드일 경우에는 자신의 원소값을 넣는다. 그림으로 보도록하자. - 교집합이 없기 때문에 두 집합을 하나의 배열로 표현할 수... 유니온 파인드(Union-Find) 알고리즘 위에서 상호베타적 집합을 트리로 표현하고 배열로 구현한 이유는 바로 이 유니온 파인드 알고리즘을 효율적으로 구현하기 위함이다. 유니온 파인드 알고리즘이란 상호베타적 집합을 활용하는 알고리즘이다. 이름에서도 알 수 있듯 유니온 파인드 알고리즘은 두 가지 알고리즘으로 이루어져 있다. 바로 유니온(Union) 알고리즘과 파인드(Find) 알고리즘이다. 이름 순서상 유니온(Union) 알고리즘이 먼저 나오지만 파인드(Find) 알고리즘을 먼저 설명해야 이해가 쉽기 때문에 파인드 알고리즘부터 설명하겠다. 파인드(Find) 알고리즘 Find 유니온 파인드 알고리즘 구현하기(자바) 자료구조 int[] parent; int[] rank; parent[]: 각 원소의 부모 원소 rank[]: 각 원소의 랭크 파인드(Find) 알고리즘 int find(int val) { if (parent[val] == val) { return val; } return find(parent[val]); } 해당 원소의 부모 원소를 찾고 그 원소가 루트 노드인지를 재귀적으로 확인한다. 유니온(Union) 알고리즘 void union(int x, int y) { int root_x = fin 10 상호베타적 집합(또는 서로소 집합: Disjoint Set)이란 교집합이 없는 집합관계를 의미한다. 상호베타적 집합은 다음과 같이 트리 형태로 표현한다. 집합 A와 B는 교집합이 존재하지 않으므로 상호베타적 집합이라고 할 수 있다. 2024.05.24 통합웹 더보기
서비스 안내 스토리의 글을 대상으로 검색결과를 제공합니다. 자세히보기 tlsdbfk.tistory.com _ Chapter 10 그래프 이론 - 서로소 집합 서로소 집합 자료구조 서로소 집합 정보가 주어졌을 때 트리 자료구조를 이용해서 집합을 표현하는 서로소 집합 계산 알고리즘 union (합집합) 연산을 확인하여, 서로 연결된 두 노드 A, B를 확인함. A와 B의 루트노드 A', B'를 각각 찾음. A'를 B'의 부모 노드로 설정함. (B'가 A'를 가리키도록 함) 모든 union (합집합) 연산을 처리할 때까지 1번 과정을 반복함. 서로소 집합 계산 알고리즘의 동작 방식 전체 집합 {1, 2, 3, 4, 5, 6}이 6개의 원소로 구성되어 있는 상황다음과 같은 4개의 union 연산이 주어짐.- union 1, 4- union 2, 3- union 2, 4- union 5, 6 전체 원소가 {1, 2, 3, 4} 와 {5, 6} 이라는 두 집합으로 나누어지는 것을 알 수 있음. 서로소 집합 알고리즘 과정 1. 노드의 개수 크기의 부모 테이블 초기화 2. union 1, 4 : 노드 1과 노드 4의 루트 노드를 각각 찾고, 큰 번호에 해당하는 루트 노드 4의 부모를 1로 설정함. ... 3. union 5, 6 : 각 단계를 반복함. union 연산을 효과적으로 수행하기 위해 부모 테이블을 항상 가지고 있어야 함. 또한 루트 노드를 즉시 계산할 수 없고, 부모 테이블을 계속해서 확인하며 거슬러 올라가야 함. 예를 들어 위의 그림에서 노드 3의 부모는 2라고 설정되어 있지만 노드 2의 부모 노드는 1이기 때문에 최종적으로 노드 3의 루 기본적인 서로소 집합 알고리즘 소스코드 # 특정 원소가 속한 집합을 찾기 def find_parent(parent, x): # 루트 노드가 아니라면, 루트 노드를 찾을 때까지 재귀적으로 호출 if parent[x] != x: return find_parent(parent, parent[x]) return x # 두 원소가 속한 집합을 합치기 def union_parent(parent, a, b): a = find_parent(parent, a) b = find_parent(parent, b) if a < b: 경로 압축 기법 경로 압축 (Path Compression) 기법을 적용하면 개선할 수 있음. find 함수를 재귀적으로 호출한 뒤에 부모 테이블값을 갱신하는 기법 def find_parent(parent, x): if parent[x] != x: parent[x] = find_parent(parent, parent[x]) return parent[x] 개선된 서로소 집합 알고리즘 소스코드 # 특정 원소가 속한 집합을 찾기 def find_parent(parent, x): # 루트 노드가 아니라면, 루트 노드를 찾을 때까지 재귀적으로 호출 if parent[x] != x: parent[x] = find_parent(parent, parent[x]) return parent[x] # 두 원소가 속한 집합을 합치기 def union_parent(parent, a, b): a = find_parent(parent, a) b = find_parent(parent, b) 서로소 집합 알고리즘의 시간 복잡도 노드의 개수가 V개이고, 최대 V-1개의 union 연산과 M개의 find 연산이 가능할 때 경로 압축 방법을 적용한 시간 복잡도는 \( O(V + M (1 + log_{2-M/V}V \) 임. 서로소 집합을 활용한 사이클 판별 무방향 그래프 내에서의 사이클을 판별할 때 사용할 수 있음. 각 간선을 확인하며 두 노드의 루트 노드를 확인함. 루트 노드가 서로 다르다면 두 노드에 대하여 union 연산을 수행함. 루트 노드가 서로 같다면 사이클 (Cycle) 이 발생한 것 그래프에 포함되어 있는 모든 간선에 대해 1번 과정을 반복함 사이클 판별 알고리즘 과정 1. 모든 노드에 대해 자기 자신을 부모로 설정하는 형태로 부모 테이블 초기화 2. 간선 (1, 2) 확인, 노드 1과 노드 2의 루트 노드는 각각 1, 2임. 따라서 더 큰 번호를 갖는 노드 2의 부모 노드를 1로 변경 3. 간선 (1, 3) 확인, 노드 1과 노드 3의 루트 노드는 각각 1, 3임. 따라서 더 큰 번호를 갖는 노드 3의 부모 노드를 1로 변경 4. 간선 (2, 3) 확인, 이때 노드 2와 노드 3이 이미 루트 노드로 노드 1을 가지고 있음. 사이클 발생을 알 수 있음. 서로소 집합을 활용한 사이클 판별 소스코드 # 특정 원소가 속한 집합을 찾기 def find_parent(parent, x): # 루트 노드가 아니라면, 루트 노드를 찾을 때까지 재귀적으로 호출 if parent[x] != x: parent[x] = find_parent(parent, parent[x]) return parent[x] # 두 원소가 속한 집합을 합치기 def union_parent(parent, a, b): a = find_parent(parent, a) b = find_parent(parent, b) 11 서로소 집합 정보가 주어졌을 때 트리 자료구조를 이용해서 집합을 표현하는 서로소 집합 계산 알고리즘 union (합집합) 연산을 확인하여, 서로 연결된 두 노드 A, B를 확인함. A와 B의 루트노드 A', B'를 각각 찾음. A'를 B'의 부모 노드로 설정함. (B'가 A'를 가리키도록 함) 모든 union (합집합) 연산을 처리할 때까지 1번 과정을 반복함. 2024.05.08 티스토리 검색 더보기 brunch.co.kr 김나야 구구단에 숨겨진 수의 비밀은? 5를 세 번 곱하면? 5를 세 번 곱하면 얼마일까요. 혹시 자신 있게 15를 외치셨는지요. 5를 세 번 곱했다는 것은 5×5×5입니다. 간단히 5³으로 나타낼 수 있어요. 계산하면 125이지요. 5×3이 의미하는 것은? 그렇다면 5×3은 무엇을 의미할까요. 5를 세 번 더했다는 뜻입니다. 5+5+5를 간단히 나타낸 게 5×3이에요. 계산하면 15이지요. '5를 세 번 곱했다'와 '5를 세 번 더했다'는 얼핏 비슷하게 들리지만 완전히 다른 의미입니다. 만약 5를 100번 더한다면요? 5+5+5+5+5+5+5+5+5+5+5+5+5+5+5+5+5+5+5+5+5+5+5+5+5+5+5+5+5+5+5+5+5+5+5+5+5+5+5+5+5+5+5+5+5+5+5+5+5+5+5+5+5+5+5+5+5+5+5+5+5+5+5+5+5+5+5+5+5+5+5+5+5+5+5+5 3,7,9는 10과 서로소 관계이므로 3,7,9는 10과 서로소 관계이기 때문에 그렇습니다. '서로소'란 용어 기억나시는지요. '서로소'란 두 수의 최대공약수가 1인 자연수입니다. '약수'란 무엇이냐, 약수는 그 수를 나누어 떨어지게 하는 수입니다. 그럼 '공약수'는 무엇이냐, 두 수를 나누어 떨어지게 하는 공통의 수입니다. 그렇다면 '최대공약수'는 무엇이냐, 공약수 중 가장 큰 수를 말합니다. 2와 10의 최대공약수는 2 4와 10의 최대공약수는 2 6과 10의 최대공약수는 2 8과 10의 최대공약수는 2 5와 10의 최대공약수는 5 3과 10의 최대공약수는 1 7과 자세히 보아야 예쁘다 구구단도 그렇다 https://youtu.be/mXLzLhfJgxM?si=h-FqrE79TxfwptDs 14 3,7,9는 10과 서로소 관계이기 때문에 그렇습니다. '서로소'란 용어 기억나시는지요. '서로소'란 두 수의 최대공약수가 1인 자연수입니다. '약수'란 무엇이냐, 약수는 그 수를 나누어 떨어지게 하는 수입니다. 그럼 '공약수'는 무엇이냐, 두 수를 나누어 떨어지게 하는 공통의 수입니다. 그렇다면 '최대공약수'는 무엇이냐, 공약수 중 가장 큰 수를 말합니다. 2와 10의 최대공약수는 2 4와 10의 최대공약수는 2 6과 10의 최대공약수는 2 8과 10의 최대공약수는 2 5와 10의 최대공약수는 5 3과 10의 최대공약수는 1 7과 브런치북 수포자 어른을 위한 최소한의 수학 구구단 곱셈구구 수학 2024.04.16 브런치스토리 검색 더보기 story.kakao.com 김무수 김무수 - 카카오스토리 13 #가조도여행 그때나 지금이나 변한것은 없는데 술이 남았네ㅋㅋ #양장피 #항정살 #가리비 #가조도석양 #벗꽃터널 #바람의언덕 #매미성 #마리도물회 #김무수 #글 #사람 #사회적존재 #친애욕구 #서로소통 #거제시 2024.04.07 카카오스토리 검색 더보기
서로소 brunch.co.kr/@sisilyuk 브런치스토리 서로소는 1 이외에 어떤 수로도 함께 나누어 떨어질 수 없는 두 자연수의 관계를 말합니다. 시,수필... 서로소 blog.naver.com/pl3143 네이버 블로그 음악 좋아하고 열심히 일하고 주말엔 영화도 챙겨보곤 해 서로소 blog.naver.com/soda9898 네이버 블로그 소원X홍차와 소다서씌의 공블!!! 사이트 더보기