선형방정식을 행렬 형태로 표현하는 C++ 프로그램입니다. 알고리즘 Begin 1) Take the no of variables n and the coefficients of each variable as input. 2) Declare a matrix[n][n] and constant[n][1]. 3) Make for loops i = 0 to n-1 and j = 0 to n-1 to take the coefficients of each
전기 회로에서 Wire Length를 최적화하기 위한 C++ 프로그램입니다. 알고리즘 Begin Function optimizeLength() : 1) Declare a array dist[N]. 2) sptSet[i] will be true if component i is included in shortest path tree or shortest distance from src to i is finalized. 3
Dynamic Programming을 사용하여 Optimal Paranthesization을 수행하는 C++ 프로그램입니다. 알고리즘 Begin Take the length n and dimension of matrix as input. MatrixChain() to find out minimum multiplications: Arguments: a[i][j]=Minimum number of scalar multiplicati
행렬의 기저와 차원을 구하는 C++ 프로그램입니다. 알고리즘 Begin Function determinant() : It calculates determinant of the matrix. /* Arguments: n = number of elements. matrix[10][10] = input matrix. */
이것은 모든 대수식의 최소값을 찾는 C++ 프로그램입니다. (x1 + x2 + x3 + . . . + xa) * (y1 + y2 + . . . + yb) 및 (a + b) 형식의 대수식 ) 정수가 주어집니다. 숫자와 나머지 b 숫자의 가능한 모든 조합을 고려하고 최소값을 도출할 수 있는 값을 계산합니다. 알고리즘 Begin function MaxValue() : Arguments: a[] = array which store the elements. &
이것은 모든 대수식의 최대값을 찾는 C++ 프로그램입니다. (x1 + x2 + x3 + . . . + xa) * (y1 + y2 + . . . + yb) 및 (a + b) 형식의 대수식 ) 정수가 주어집니다. 숫자와 나머지 b 숫자의 가능한 모든 조합을 고려하고 최대값을 도출할 수 있는 값을 계산합니다. 알고리즘 Begin function MaxValue() : Arguments: a[]=array which store the elements. &nb
Modular Exponentiation Algorithm을 구현하는 C++ 프로그램입니다. 알고리즘 Begin function modular(): // Arguments: base, exp, mod. // Body of the function: initialize res = 1 while (exp > 0) if (exp m
이것은 각각 길이가 M인 N개의 비밀번호를 생성하는 C++ 프로그램입니다. 알고리즘 시작 암호의 길이를 입력으로 사용합니다. 함수 permutation()은 임의의 암호를 생성합니다. /* 인수 포인터 배열 a. 총 난수의 개수 m. 암호의 길이 s. */ // 함수 본문:if (m ==s) for i =0 to s-1 Print *(a + i) else for i =m to s-1 int tmp =a[m] a[m ] =a[i] a[i] =tmp 순열 호출(a, m + 1, s) tmp =a[m] a[m] =a[i] a[i] =tm
이 프로그램에서 임의의 정점과 가장자리에 대해 임의의 그래프가 생성됩니다. 이 프로그램의 시간 복잡도는 O(v*e)입니다. 여기서 v는 정점의 수이고 e는 가장자리의 수입니다. 알고리즘 인수 목록에서 e를 가장자리 수로, v를 꼭짓점 수로 사용하여 GenRandomGraphs() 함수 개발을 시작합니다. rand() 함수를 사용하여 그래프의 꼭짓점과 모서리 개수에 임의의 값을 할당합니다. 방향에 관계없이 각 꼭짓점의 연결을 인쇄합니다. 차수가 없는 꼭짓점에 대해 Isolated vertex를 인쇄합니다.End 예시 #include#
Hamiltonian 주기는 Hamiltonian Path의 마지막 정점에서 첫 번째 정점까지의 모서리(그래프에서)가 있는 것과 같은 Hamiltonian Path입니다. 무방향 그래프에서 그래프의 각 꼭짓점을 정확히 한 번만 방문하는 경로입니다. 기능 및 목적 Begin 1. function isSafe() is used to check for whether it is adjacent to the previously added vertex and already not added. &n
이 프로그램에서 우리는 그래프의 에지 연결성을 찾아야 합니다. 그래프 그래프의 에지 연결성은 브리지임을 의미하며 이를 제거하면 그래프 연결이 끊어집니다. 연결되지 않은 무방향 그래프에서 브리지를 제거하면 연결된 구성 요소의 수가 증가합니다. 함수 및 의사코드 Begin Function connections() is a recursive function to find out the connections: A) Mark the current node un visited. &nb
이 프로그램에서 우리는 기본적으로 그래프에서 제거될 때 그래프가 방향성 비순환 그래프가 되는 모서리를 포함하는 피드백 호 세트를 찾을 것입니다. 알고리즘 Begin function checkCG(int n) : n: number of vertices. arr: struct graph variable. Initialize cnt = 0 and size = (n-1). For i =0 to n-1 if (cnt == size) return 0 if (a
Hamiltonian 주기는 Hamiltonian Path의 마지막 정점에서 첫 번째 정점까지의 모서리(그래프에서)가 있는 것과 같은 Hamiltonian Path입니다. 무방향 그래프에서 그래프의 각 꼭짓점을 정확히 한 번만 방문하는 경로입니다. 기능 및 목적 Begin 1. function isSafe() is used to check for whether it is adjacent to the previously added vertex and already not added. &n
주어진 방향 그래프에 대한 Weakly 또는 Strongly Connected는 DFS를 사용하여 찾을 수 있습니다. 이 문제의 C++ 프로그램입니다. 사용된 기능 Begin Function fillorder() = fill stack with all the vertices. a) Mark the current node as visited and print it b) Recur for all the vertices adjacent to this vertex c)
주어진 무방향 그래프에 대한 Weakly 또는 Strongly Connected는 DFS를 사용하여 찾을 수 있습니다. 이 문제의 C++ 프로그램입니다. 사용된 기능 Begin Function fillorder() = fill stack with all the vertices. a) Mark the current node as visited and print it b) Recur for all the vertices adjacent to this vertex c)
이 프로그램에서 그래프의 최대 컷을 찾으려면 그래프의 Edge Connectivity를 찾아야 합니다. 그래프 그래프의 에지 연결성은 브리지임을 의미하며, 이를 제거하면 그래프 연결이 끊어집니다. 연결되지 않은 무방향 그래프에서 브리지를 제거하면 연결된 구성 요소의 수가 증가합니다. 함수 및 의사코드 Begin Function connections() is a recursive function to find out the connections: A) Mark the current nod
그래프의 정점 연결성을 찾으려면 해당 그래프의 Articulation Points를 찾아야 합니다. 그래프의 Articulation Points(또는 Cut Vertex)는 이를 제거하면(그리고 이를 통과하는 모서리) 그래프의 연결이 끊어지면 점이 됩니다. 연결되지 않은 무방향 그래프의 접합점은 연결된 구성 요소의 수를 증가시키는 정점 제거입니다. 알고리즘 Begin We use dfs here to find articulation point: In DFS, a vertex w is a
먼저 rand() 함수에 대해 논의하겠습니다. rand() 함수는 C++의 미리 정의된 메서드입니다. 헤더 파일에 선언되어 있습니다. rand()는 범위 내에서 난수를 생성하는 데 사용됩니다. 여기서 min_n은 난수의 최소 범위이고 max_n은 숫자의 최대 범위입니다. 따라서 rand()는 한계 값을 포함하여 min_n에서 (max_n – 1) 사이의 난수를 반환합니다. 여기서 하한과 상한을 각각 1과 100으로 언급하면 rand()는 1에서 (100 – 1) 사이의 값을 반환합니다. 즉, 1에서 99까지입니다. 알고리즘 B
임의의 16진수를 생성할 수 있는 C++ 프로그램에 대해 논의할 것입니다. 여기서는 rand() 및 itoa() 함수를 사용하여 동일한 기능을 구현합니다. 이러한 기능에 대해 개별적이고 범주적으로 논의하겠습니다. 랜드(): rand() 함수는 C++의 미리 정의된 메서드입니다. 헤더 파일에 선언되어 있습니다. rand()는 범위 내에서 난수를 생성하는 데 사용됩니다. 여기서 min_n은 난수의 최소 범위이고 max_n은 숫자의 최대 범위입니다. 따라서 rand()는 한계 값을 포함하여 min_n에서 (max_n – 1) 사이의
Solovay-Strassen 소수성 테스트는 숫자가 합성수인지 또는 소수일 가능성이 있는지 여부를 테스트하는 데 사용됩니다. 알고리즘 Begin Declare a function modulo to the long datatype to perform binary calculation. Declare m_base, m_exp, m_mod of long datatype and pass them as a parameter. Declare t