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

    1. Python에서 차이가 대상보다 큰 고유 쌍의 최대 수를 계산하는 프로그램

      nums라는 숫자 목록과 다른 값 대상이 있다고 가정합니다. 각 쌍에 대해 i =대상입니다. 따라서 입력이 nums =[2, 4, 6, 10, 11], target =5와 같으면 쌍을 얻을 수 있으므로 출력은 2가 됩니다. (2, 6), (5, 10) 이 문제를 해결하기 위해 다음 단계를 따릅니다. − N :=A의 크기 목록 A 정렬 ans :=0 j :=N / 2 0 ~ N/2 범위의 i에 대해 다음을 수행합니다. j

    2. C++에서 현명한 연결 목록 쌍의 노드를 교환하는 프로그램

      연결된 목록이 있다고 가정합니다. 인접한 두 노드(쌍)를 모두 교환하고 헤드를 반환해야 합니다. 여기서 제약 조건은 노드 값을 수정할 수 없으며 노드 자체만 변경할 수 있다는 것입니다. 따라서 목록이 [1,2,3,4]와 같으면 결과 목록은 [2,1,4,3]이 됩니다. 이 문제를 해결하기 위해 다음 단계를 따릅니다. − 머리가 없으면 머리를 반환 첫 번째 :=헤드, 두 번째 :=헤드 다음, 더미는 값이 -1인 하나의 새 노드입니다. 더미의 다음 :=첫 번째, 이전 :=더미 초가 null이 아닌 동안 temp :=다음 초 첫 번째

    3. Python에서 연결 목록 항목이 회문을 형성하는지 확인하는 프로그램

      연결된 목록이 있다고 가정합니다. 목록 요소가 회문을 형성하는지 여부를 확인해야 합니다. 따라서 목록 요소가 [5,4,3,4,5]와 같으면 이것은 회문이지만 [5,4,3,2,1]과 같은 목록은 회문이 아닙니다. 이 문제를 해결하기 위해 다음 단계를 따릅니다. − 빠름 :=헤드, 느림 :=헤드, rev :=없음 및 플래그 :=1 머리가 비어 있으면 true를 반환합니다. 단식과 다음 단식을 사용할 수 있는 동안 다음 단식을 사용할 수 있는 경우 플래그를 0으로 설정하고 루프를 끊습니다. 빠른 :=빠른 다음의 다음 temp :=느림

    4. 주어진 문자열을 확인하는 프로그램은 Python에서 회문(palindromic)의 아나그램입니다.

      문자열 s가 있다고 가정하고 s의 순열이 회문인지 여부를 확인해야 합니다. 따라서 입력이 s =admma와 같으면 admma를 회문인 madam으로 재정렬할 수 있으므로 출력은 True가 됩니다. 이 문제를 해결하기 위해 다음 단계를 따릅니다. − c :=s의 각 개별 문자 수를 담고 있는 지도 카운트:=0 c의 모든 값 목록에 있는 각 i에 대해 do 내가 홀수이면 카운트가 0과 같으면 카운트 :=카운트 + 1 루프에서 나오다 거짓을 반환 참 반환 이해를 돕기 위해 다음 구현을 살펴보겠습니다. − 예 from

    5. Python에서 트리의 중위 시퀀스가 ​​회문인지 여부를 확인하는 프로그램

      각 노드에 0-9 사이의 숫자가 포함된 이진 트리가 있다고 가정하고 해당 노드의 순회가 회문인지 여부를 확인해야 합니다. 따라서 입력이 다음과 같으면 그러면 출력은 중위 순회가 [2,6,10,6,2]이므로 True가 됩니다. 이 문제를 해결하기 위해 다음 단계를 따릅니다. − 루트가 null이면 참 반환 스택 :=새 스택 curr :=루트 inorder :=새 목록 스택이 비어 있지 않거나 curr이 null이 아닌 동안 do curr이 null이 아닌 동안 do curr를 스택에 푸시 curr :=curr의 왼쪽

    6. Python에서 이진 트리의 잎 및 비 잎 노드를 찾는 프로그램

      이진 트리가 있다고 가정하고 첫 번째 숫자는 트리의 잎 개수이고 두 번째 숫자는 잎이 아닌 노드의 개수인 두 개의 숫자 목록을 찾아야 합니다. 따라서 입력이 다음과 같으면 3개의 잎과 2개의 잎이 아닌 노드가 있으므로 출력은 (3, 2)가 됩니다. 이 문제를 해결하기 위해 다음 단계를 따릅니다. − n이 null이면 반환(0, 0) n의 왼쪽이 null이고 n의 오른쪽이 null이면 반환(1, 0) left :=해결(n의 왼쪽) right :=해결(n의 오른쪽) 반환(왼쪽[0] + 오른쪽[0], 1 + 왼쪽[1]

    7. 파이썬에서 트리를 두 개로 나누는 방법의 수를 세는 프로그램

      값 0, 1 및 2를 포함하는 이진 트리가 있다고 가정합니다. 루트에는 최소한 하나의 0 노드와 하나의 1 노드가 있습니다. 이제 트리에서 가장자리를 삭제하고 트리가 두 개의 다른 트리가 되는 작업이 있다고 가정합니다. 우리는 두 트리 중 어느 것도 0 노드와 1 노드를 모두 포함하지 않도록 한 가장자리를 삭제할 수 있는 방법의 수를 찾아야 합니다. 따라서 입력이 다음과 같으면 0에서 2까지의 가장자리만 삭제할 수 있으므로 출력은 1이 됩니다. 이 문제를 해결하기 위해 다음 단계를 따릅니다. − 카운트 :=[0, 0, 0

    8. Python에서 작업자에게 동전을 배포할 수 있는 방법의 수를 계산하는 프로그램

      동전과 급여라고 하는 두 개의 양수 목록이 있다고 가정합니다. 여기서 코인[i]은 코인 i의 가치를 나타내고, 급여[j]는 근로자 j에게 지불해야 하는 최소 급여 금액을 나타냅니다. 이제 유형당 하나의 동전이 있고 각 작업자에게 정확히 하나의 동전을 주어야 한다고 가정하고 각 작업자에게 동전을 주는 방법의 수를 계산해야 합니다. 여기서 어떤 작업자가 한 가지 방법으로 한 가지 유형의 동전을 받고 다른 방법으로 다른 유형의 동전을 받는 경우 두 가지 방법이 다릅니다. 결과가 매우 크면 결과 모드 10^9+7을 반환합니다. 따라서 입

    9. Python에서 여러 복사본을 가져와 배낭 문제에서 얻을 수 있는 최대값을 찾는 프로그램

      가중치와 값이라고 하는 길이가 같은 두 개의 목록이 있고 또 다른 가치 용량이 있다고 가정합니다. 여기서 weights[i]와 values[i]는 i번째 항목의 가중치와 값을 나타냅니다. 최대 용량 가중치를 사용할 수 있고 각 항목에 대해 원하는 만큼의 사본을 사용할 수 있다면 얻을 수 있는 최대 가치를 찾아야 합니다. 따라서 입력이 weight =[1, 2, 3], values ​​=[1, 5, 3], capacity =5인 경우 출력은 11이 됩니다. 이 문제를 해결하기 위해 다음 단계를 따릅니다. − dp() 함수를 정의

    10. Python에서 연속 하위 배열의 최대 곱을 찾는 프로그램

      num이라는 배열이 있다고 가정하고 가장 큰 곱을 갖는 배열(최소한 하나의 숫자를 포함) 내에서 인접한 하위 배열 요소의 곱을 찾아야 합니다. 따라서 배열이 [1,9,2,0,2,5]이면 인접한 하위 배열 [1,9,2]에 최대 곱이 있으므로 출력은 18이 됩니다. 이 문제를 해결하기 위해 다음 단계를 따릅니다. − max_list :=크기 숫자 목록, 0으로 채우기 min_list :=크기 숫자 목록, 0으로 채우기 min_list :=크기 숫자 목록, 0으로 채우기 1에서 nums 길이까지의 i에 대해 max_list[i] =m

    11. 파이썬에서 잡을 수 있는 총 비의 양을 찾는 프로그램

      음이 아닌 정수 n개의 배열이 있다고 가정합니다. 이것들은 각 막대의 너비가 1인 높이를 나타냅니다. 우리는 비가 온 후 얼마나 많은 물을 잡을 수 있는지 계산해야 합니다. 따라서 지도는 다음과 같을 것입니다 - 여기에서 8개의 파란색 상자가 있는 것을 볼 수 있으므로 출력은 8이 됩니다. 이 문제를 해결하기 위해 다음 단계를 따릅니다. − 스택 st, water :=0 및 i :=0 정의 i <높이의 크기 =height[i]인 경우 i를 스택에 푸시하고 i를 1만큼 증가시킵니다. 그렇지 않으면 x :=스택 상단 요소, 스

    12. Python에서 주어진 범위의 요소를 업데이트하는 프로그램

      nums라는 숫자 목록과 작업 목록이 있다고 가정합니다. 여기서 각 연산에는 세 개의 필드 [L, R, X]가 있습니다. 이는 인덱스 L에서 R(포함)까지 모든 요소를 ​​X만큼 증가시켜야 함을 나타냅니다. 모든 작업을 적용하고 최종 목록을 반환해야 합니다. 따라서 입력이 nums =[8, 4, 2, -9, 4] operations =[ [0, 0, 3], [1, 3, 2], [2, 3, 5] ]와 같은 경우 초기 목록이 [8, 4, 2, -9, 4]였으므로 출력은 [11, 6, 9, -2, 4]가 됩니다. 첫 번째 작업 [0,

    13. Python의 목록에서 중복 항목을 제거하는 프로그램

      nums라는 숫자 목록이 있고 목록에 여러 번 나타나는 숫자를 제거해야 하고 원래 목록에 나타나는 순서도 유지해야 한다고 가정합니다. 따라서 입력이 nums =[2, 4, 6, 1, 4, 6, 9]와 같으면 이러한 요소가 한 번만 나타나므로 출력은 [2, 1, 9]가 됩니다. 이 문제를 해결하기 위해 다음 단계를 따릅니다. − dict :=새 지도 숫자 단위의 각 i에 대해 다음을 수행합니다. 내가 사전에 없으면 딕셔너리[i] :=0 dict[i] :=dict[i] + 1 dict[e]가 1인 숫자의 모든 요소 e를

    14. Python의 연결 목록에서 중복 항목을 제거하는 프로그램

      숫자의 연결 목록이 있다고 가정하고 연결 목록에 여러 번 나타나는 숫자를 제거해야 하고(출력에서 한 번만 유지) 원래 연결 목록에 나타나는 순서도 유지해야 합니다. 9]가 됩니다. 이 문제를 해결하기 위해 다음 단계를 따릅니다. − 노드가 null이 아니면 l :=새로운 세트 temp :=노드 l에 temp 값 삽입 temp의 다음이 null이 아닌 동안 do temp의 다음 값이 l에 없으면 l에 다음 temp 값 삽입 temp :=다음 temp 그렇지 않으면 다음 임시:=다음 임시 반환 노드 이해를

    15. Python에서 문자열을 올바르게 만들기 위해 제거해야 할 최소 유효 괄호 수를 계산하는 프로그램

      괄호 문자열이 있다고 가정합니다. 문자열을 올바르게 만들기 위해 제거해야 하는 최소 괄호 수를 계산하는 함수를 작성해야 합니다(각 열린 괄호는 결국 닫힙니다). 따라서 입력이 (()))(와 같으면 올바른 문자열이 (())이므로 출력은 2가 됩니다. )(를 제거하십시오. 이 문제를 해결하기 위해 다음 단계를 따릅니다. − 총계:=0, 온도:=0 s의 각 p에 대해 다음을 수행합니다. p가 (와 같으면 총계 :=총계 + 1 그렇지 않고 p가 )와 같고 total이 0이 아닌 경우 총계 :=총계 - 1 그렇지 않으면 temp

    16. Python에서 연속적인 중복 문자를 제거한 후 문자열을 찾는 프로그램

      문자열 s가 있다고 가정하고 첫 번째 연속 중복 문자를 반복적으로 삭제합니다. 마지막 문자열을 찾아야 합니다. 따라서 입력이 s =xyyyxxz와 같으면 yyy가 삭제될 첫 번째 연속 중복 문자이므로 출력은 z가 됩니다. 그래서 우리는 xxxz가 있습니다. 그런 다음 xxx가 삭제되어 z로 끝납니다. 이 문제를 해결하기 위해 다음 단계를 따릅니다. − 스택 :=새 스택 i :=0 i

    17. Python에서 연결 목록을 반전시키는 프로그램

      2가 됩니다. 이 문제를 해결하기 위해 우리는 이 접근 방식을 따를 것입니다 - solve(head, back)와 같은 재귀적 방식으로 목록 반전을 수행하는 하나의 프로시저 정의 머리가 없으면 머리를 반환 temp :=head.next head.next :=뒤로 뒤:=머리 temp가 비어 있으면 head를 반환합니다. 머리 :=온도 반환 해결(머리, 뒤로) 이해를 돕기 위해 다음 구현을 살펴보겠습니다. − 예 class ListNode:    def __init__(self, data, next = None

    18. Python에서 방향 그래프를 반전시키는 프로그램

      방향 그래프가 있다고 가정하고 그 반대 방향을 찾아야 하므로 간선이 u에서 v로 이동하면 이제 v에서 u로 이동합니다. 여기서 입력은 인접 목록이 될 것이며 n개의 노드가 있는 경우 노드는 (0, 1, ..., n-1)이 됩니다. 따라서 입력이 다음과 같으면 그러면 출력은 이 문제를 해결하기 위해 다음 단계를 따릅니다. − ans :=n개의 서로 다른 목록의 목록, 여기서 n은 정점의 수입니다. 그래프의 각 인덱스 i와 인접 목록 l에 대해 다음을 수행합니다. l의 각 x에 대해 다음을 수행합니다. as[x] 끝에 i

    19. Python에서 k 크기의 그룹으로 연결 목록을 반전시키는 프로그램

      단일 연결 목록이 있고 또 다른 값 k가 있다고 가정하면 모든 k개의 인접한 노드 그룹을 반대로 해야 합니다. 따라서 입력이 List =[1,2,3,4,5,6,7,8,9,10], k =3인 경우 출력은 [3, 2, 1, 6, 5 , 4, 9, 8, 7, 10, ] 이 문제를 해결하기 위해 다음 단계를 따릅니다. − tmp :=값이 0인 새 노드 tmp 다음:=노드 이전 :=null, curr :=null lp :=임시, lc :=현재 cnt :=k curr이 null이 아닌 동안 do 이전 :=null 0이고 curr이 nu

    20. Python에서 구조에 필요한 최소 로켓 수를 찾는 프로그램

      무게라고 하는 숫자 목록이 있고 이것이 사람들의 무게를 나타내고 값 제한이 로켓 한 척의 무게 제한을 결정한다고 가정합니다. 이제 각 로켓에는 최대 2명이 탑승할 수 있습니다. 우리는 모두를 행성으로 구출하는 데 필요한 최소한의 로켓 선박 수를 찾아야 합니다. 따라서 입력이 weight =[300, 400, 300], limit =600과 같으면 출력은 2가 됩니다. 각각의 무게가 300인 두 사람을 태우려면 로켓 한 척이 필요하고 다른 두 사람을 데려가려면 다른 로켓이 필요하기 때문입니다. 체중이 400인 사람. 이 문제를 해

    Total 8994 -컴퓨터  FirstPage PreviousPage NextPage LastPage CurrentPage:180/450  20-컴퓨터/Page Goto:1 174 175 176 177 178 179 180 181 182 183 184 185 186