Computer >> 컴퓨터 >  >> 프로그램 작성 >> C++
  • C 프로그래밍
  •   
  • C++
  •   
  • Redis
  •   
  • BASH 프로그래밍
  •   
  • Python
  •   
  • Java
  •   
  • 데이터 베이스
  •   
  • HTML
  •   
  • JavaScript
  •   
  • 프로그램 작성
  •   
  • CSS
  •   
  • Ruby
  •   
  • SQL
  •   
  • IOS
  •   
  • Android
  •   
  • MongoDB
  •   
  • MySQL
  •   
  • C#
  •   
  • PHP
  •   
  • SQL Server
  • C++

    1. C++에서 발생하는 순서대로 홀수 빈도의 문자 인쇄

      이 문제에서 우리는 사용자로부터 문자열 str을 받습니다. 그리고 발생 빈도가 홀수인 문자만 인쇄해야 합니다. 이 문제를 해결하려면 문자열에서 문자의 총 발생 빈도를 찾아야 합니다. 그리고 발생 빈도가 홀수인 문자열만 출력합니다. 주제를 더 잘 이해하기 위해 예를 들어 보겠습니다 - Input : adatesaas. Output : dte 설명 −발생 빈도가 있는 문자는 다음과 같습니다. - a 4 d 1 t 1 e 1 2 홀수 빈도의 문자는 d, t, e.입니다. 알고리즘 이제 이 문제를 해결하기 위한 알

    2. C++에서 발생 순서대로 문자와 빈도를 인쇄합니다.

      이 문제는 소문자 문자열이 제공됩니다. 문자열에서 발생하는 각 문자의 빈도를 찾아야 합니다. 문제에 대해 자세히 설명할 때 아래의 예를 참조하세요. Input : “jskdk” Output : j 1 s 1 k 2 d 1 설명 - 문자열에서 문자 j, s, d는 한 번 발생하고 k는 두 번 발생합니다. 따라서 인쇄된 출력은 위의 결과를 제공합니다. 이제 이 문제를 해결하기 위한 논리를 만들어 보겠습니다. 언급한 바와 같이 문자열에서 각 문자의 발생 빈도를 찾아야 합니다. 한 가지 논리적인 방법은 문자열을 탐

    3. C++에서 주어진 연도의 달력 인쇄

      이 문제에서는 1년이 주어지고 해당 연도의 달력을 인쇄하려고 합니다. 연도 달력은 해당 월의 모든 날짜에 모든 요일, 월을 표시합니다. 그리고 여기에서 올해의 달력을 반환하는 프로그램을 만들 것입니다. 이를 위해서는 다음과 같은 계산이 필요합니다. 특정 월의 일 수 1월, 3월, 5월, 7월, 8월, 10월, 12월은 31일입니다. 2월은 비윤년은 28일, 윤년은 29일입니다. 4월, 6월, 9월, 11월은 30일입니다. 월의 시작일(평일) 연도와 월을 기준으로 매월 1일의 요일을 찾습니다. 예시 이제 2020년 달력을

    4. C++에서 괄호 번호 인쇄

      이 문제에서는 표현식이 제공됩니다. 그리고 대괄호 번호 시퀀스를 인쇄해야 합니다. 문제를 더 잘 이해하기 위해 예를 살펴보겠습니다. 예, Input : ((()())()) Output : 1233442551 설명 − 여기에서 우리는 5개의 대괄호 쌍을 발견했으며 [발생 순서대로 인쇄했습니다. 이제 문제를 알았으므로 이 솔루션에 대한 솔루션을 만들어 보겠습니다. 이 문제를 해결하려면 스택 데이터 구조가 필요합니다. 우리는 왼쪽 대괄호의 개수를 유지하고 스택이 오른쪽 대괄호를 추적하는 하나의 변수를 사용할 것입니다. 우리는 왼쪽

    5. C++에서 지정된 범위의 BST 키 인쇄

      이 문제에서는 이진 검색 트리의 두 노드가 제공됩니다. 그리고 트리에서 발생하는 k1 ~ k2 범위의 모든 값을 출력해야 합니다. 즉, k1보다 크고 k2보다 작은 모든 값을 인쇄해야 합니다. 그리고 이 모든 키를 값의 오름차순으로 인쇄해야 합니다. 이진 검색 트리 이 3가지 속성을 따르는 트리입니다 - 왼쪽 하위 트리에는 노드 값보다 작은 값을 가진 노드가 있습니다. 오른쪽 하위 트리에는 노드 값보다 큰 값을 가진 노드가 있습니다. 가져온 하위 트리도 이진 검색 트리여야 합니다. 트리에는 중복 노드가 허용되지 않

    6. C++에서 숫자 N의 비트 AND 세트 인쇄

      이 문제에서는 0에서 n까지의 모든 숫자를 출력해야 합니다. 이 숫자는 n의 이진법에 대한 Bitwise AND입니다. 개념을 더 잘 이해할 수 있도록 예를 들어 보겠습니다. Input : N = 4. Output : 0 4 Explanation :    0 & 4 = 0    1 & 4 = 0    2 & 4 = 0    3 & 4 = 0    4 & 4 = 4. Input : N = 6 Output :

    7. C++에서 정렬된 순서로 이진 트리 수준 인쇄

      이 문제에서는 이진 트리가 주어지고 모든 노드를 값의 정렬된 순서로 한 수준에서 인쇄해야 합니다. 개념을 더 잘 이해할 수 있도록 예를 들어 보겠습니다. 입력 - 출력 - 20 6 15 2 17 32 78 이 문제를 해결하려면 트리의 각 수준에 대한 정렬된 순서를 인쇄해야 합니다. 이를 위해 대기열과 두 개의 우선순위 대기열을 생성해야 합니다. NULL 구분 기호는 두 수준을 구분하는 데 사용됩니다. 예 논리를 설명하는 프로그램 - #include <iostream> #include <queue>

    8. C++에서 주어진 행별로 정렬된 행렬의 모든 행에서 공통 요소 찾기

      각 행이 정렬된 행렬이 있다고 가정합니다. 각 행에서 공통 요소를 찾는 함수를 작성해야 합니다. 행렬이 아래와 같다고 가정 - 결과는 5입니다. 이를 해결하기 위해 해시 기반 접근 방식을 사용합니다. 이 접근 방식은 행이 정렬되지 않은 경우에도 사용할 수 있습니다. 이렇게 하려면 몇 가지 단계를 따라야 합니다 - 2개의 1의 고유한 요소로 모든 키를 사용하여 하나의 해시 테이블을 생성합니다. 모든 값은 0이 됩니다. 행렬의 각 요소를 순환하면서 해시 테이블에 숫자가 있으면 개수를 1만큼 늘립니다. 마지막으로 개수가 행렬의

    9. C++의 2차원 이진 트리 인쇄

      이 문제에서는 이진 트리가 주어지고 이를 2차원 평면으로 인쇄해야 합니다. 이진 트리는 모든 노드에 최대 두 개의 자식 노드가 있는 특수 트리입니다. 따라서 모든 노드는 리프 노드이거나 하나 또는 두 개의 하위 노드가 있습니다. 예 주제를 더 잘 이해하기 위해 예를 들어 보겠습니다 - 출력 -       7    4 5       1    3       8 이제 예제에서 보았듯이 트리의 노드는 2차원

    10. C++에서 한 문자열을 다른 문자열로 복사하지 않고 정렬된 순서로 문자열 배열 인쇄

      한 문자열을 다른 문자열로 복사하지 않고 정렬된 순서로 문자열 배열을 인쇄하는 문제에서 문자열 배열을 정렬해야 합니다. 여기서 프로그래머는 정렬하는 동안 문자열을 다른 문자열로 복사할 수 없습니다. 개념을 더 잘 이해하기 위해 예를 들어보겠습니다. 예시 - Input : {“Delhi”, “Hyderabad”, “Indore”, “Mumbai”, “Banglore”} Output : Banglore, Delhi, Hyde

    11. 주어진 문자열 A가 C++에서 B의 하위 시퀀스가 ​​되도록 회문 문자열 B를 찾습니다.

      문자열 A가 있다고 가정하고 회문이 될 다른 문자열 B를 찾아야 합니다. 그리고 주어진 문자열 A는 B의 부분수열이 될 것입니다. 문자열의 부분수열은 나머지 문자의 순서를 바꾸지 않고 일부 문자를 삭제하여 구성할 수 있는 문자열입니다. 문자열이 cotst라고 가정하면 생성된 문자열은 contest가 됩니다. 이 프로그램의 입력을 위해 우리는 A =ab를 선택했으며 생성된 문자열은 abba가 되며 이것은 회문입니다. 이를 해결하기 위해 우리는 이 접근 방식을 따를 것입니다. 이것은 매우 간단합니다. A를 반대로 한 다음 A 뒤에 반

    12. C++에서 적어도 서로 나눌 수 있는 배열 요소 인쇄

      이 문제에서는 정수 배열이 주어지며 배열의 다른 요소 중 하나 이상으로 나눌 수 있는 숫자만 인쇄해야 합니다. 개념을 더 잘 이해할 수 있도록 예를 들어 보겠습니다. Input : 3 12 16 21 Output : 12 21 설명 − 3은 가장 작은 수이므로 다른 어떤 수로도 나눌 수 있습니다. 3으로 나눌 수 있는 12, 3으로 나눌 수 없는 16, 3으로 나누어 떨어지는 21입니다. 따라서 3과 16은 무시하겠습니다. 한 가지 쉬운 방법은 모든 요소가 배열의 다른 요소로 나눌 수 있는지 여부를 확인하는 것입니다. 그러나

    13. C++의 Matrix에서 특정 쌍 찾기

      b를 염두에 두어야 합니다. 따라서 행렬이 다음과 같은 경우 - 1 2 -1 -4 -20 -8 -3 4 2 1 3 8 6 1 3 -4 -1 1 7 -6 0 -4 10 -5 1 출력은 18이 됩니다. 이것은 mat[4, 2] - mat[1, 0] =18의 차이가 최대이기 때문입니다. 이 문제를 해결하기 위해 index(i, j)가 (i, j)에서 (n - 1, n - 1)까지 행렬의 최대 요소를 저장하도록 행렬을 전처리하고 그 과정에서 지금까지 발견된 최대값을 계속 업데이트합니다. . 그런 다음 최대값을 반환합니

    14. C++에서 증가 및 감소 순서로 배열 요소 인쇄

      이 문제에서는 숫자 배열이 주어지고 인쇄하는 동안 배열의 요소를 교대로 증가 및 감소 순서로 인쇄해야 합니다. 대체 순서는 첫 번째 두 요소가 오름차순으로 정렬된 다음 다음 세 요소가 내림차순으로 다시 정렬되는 방식입니다. 다음 네 개는 오름차순입니다. 문제를 더 잘 이해하기 위해 예를 들어보겠습니다. Input : {1, 4, 0, 2, 7, 9, 3} Output : 0 1 9 7 4 2 3 설명 - 요소의 오름차순 배열은 0 1 2 3 4 7 9입니다. 처음 2개의 요소는 0 1입니다. 마지막 3개의 요소는 9 7 4입니

    15. C++에서 2의 합이 세 번째 요소와 같은 삼중항 찾기

      n개의 숫자 배열이 있다고 가정합니다. 두 요소의 합이 세 번째 요소와 같도록 세 개의 숫자를 찾아야 합니다. 따라서 배열이 [5, 32, 1, 7, 10, 50, 19, 21, 2]와 같으면 출력은 21, 2, 19가 됩니다. 그러한 요소가 발견되지 않으면 해당 메시지를 표시합니다. 이 문제를 해결하기 위해 다음과 같은 몇 가지 단계를 따릅니다. - 주어진 배열 정렬 그런 다음 마지막 요소에서 가장 큰 요소를 수정하기 시작하고 배열을 탐색하여 세 번째 요소를 합하는 다른 두 숫자를 찾습니다. 두 개의 포인터 j와

    16. C++의 이진 트리에서 지정된 노드의 조상 인쇄

      이 문제에서는 이진 트리가 주어지며 이진 트리에서 노드의 조상을 인쇄해야 합니다. 이진 트리 모든 노드에 최대 2개의 자식 노드가 있는 특수 트리입니다. 따라서 모든 노드는 리프 노드이거나 하나 또는 두 개의 하위 노드가 있습니다. 예 선조 바이너리 트리의 노드는 주어진 노드의 상위 레벨에 있는 노드입니다. 조상 노드의 예를 들어 보겠습니다 - 이 바이너리 트리에서 값이 3인 노드의 조상은 8, 이 문제를 해결하기 위해 루트 노드에서 대상 노드로 트래버스합니다. 이진 트리에서 단계적으로 아래로. 그리고 경로에서

    17. C++에서 주위에 최대 별 수가 있는 행렬에서 알파벳 찾기

      행렬 M이 있다고 가정합니다. 이것은 별과 문자로 채워져 있습니다. 우리는 어떤 글자가 그 주위에 가장 많은 별을 가지고 있는지 찾아야 합니다. 따라서 행렬이 아래와 같으면 - 여기서 A와 C는 주위에 7개의 별을 가지고 있습니다. 이것은 최대입니다. A는 사전순으로 더 작으므로 출력이 됩니다. 접근 방식은 간단합니다. 문자를 세고 한 문자가 발견되면 주변의 별을 세게 됩니다. 또한 맵 내부에 값을 저장합니다. 크기가 최대인 지도에서 인쇄됩니다. 예시 #include <iostream> #include<uno

    18. C++에서 재귀 없이 주어진 이진 트리 노드의 조상 인쇄

      이 문제에서는 이진 트리가 주어지고 이진 트리에서 노드의 조상을 인쇄해야 합니다. 이진 트리는 모든 노드에 최대 두 개의 자식 노드가 있는 특수 트리입니다. 따라서 모든 노드는 리프 노드이거나 하나 또는 두 개의 하위 노드가 있습니다. 예 선조 바이너리 트리의 노드는 주어진 노드의 상위 레벨에 있는 노드입니다. 조상 노드의 예를 들어 보겠습니다 - 이 바이너리 트리에서 값이 3인 노드의 조상은 8입니다. , 이 문제를 해결하기 위해 루트 노드에서 대상 노드로 트래버스합니다. 이진 트리에서 단계적으로 아래로. 그리

    19. C++의 이진 행렬에서 중복 행 찾기

      이진 행렬을 가정해 보겠습니다. 여기서 우리는 해당 행렬에서 중복 행을 찾는 방법을 볼 것입니다. 행렬이 다음과 같다고 가정합니다. - 1 1 0 1 0 1 0 0 1 0 0 1 1 0 1 1 0 0 1 1 0 1 0 1 0 0 1 0 0 1 0 0 1 0 0 1 위치 3, 4, 5에 중복 행이 있습니다. 이를 해결하기 위해 우리는 Tri를 사용할 것입니다. Trie는 문자 집합이 작은 데이터의 강력하고 검색에 사용되는 효율적인 데이터 구조입니다. 검색 복잡도는 키 길이로 최적입니다. 그래서 처음에는 바이너리 트라

    20. C++에서 각 행과 열에 모든 모음이 포함되도록 N x M 행렬 인쇄

      이 문제에서는 n X m 크기의 2D 행렬을 만들어야 합니다. 그리고 이 행렬에서는 각 행과 열에 모든 모음이 포함되도록 모음만 배치해야 합니다. 모든 모음은 행렬의 각 행과 각 열에 a, e, i, o, u가 모두 있음을 의미합니다. 이것은 필요한 행과 열의 최소 수를 5로 만듭니다. 즉, 가장 작은 행렬의 크기는 5X5입니다. 주제를 더 잘 이해하기 위해 예를 들어보겠습니다. 예시 1 - Input : N = 5 and M = 5. Output :    a e i o u    e i o

    Total 5992 -컴퓨터  FirstPage PreviousPage NextPage LastPage CurrentPage:114/300  20-컴퓨터/Page Goto:1 108 109 110 111 112 113 114 115 116 117 118 119 120