알고리즘을 위한 PREP 기법

7316 단어 javascript

프렙이란?



PREP는 알고리즘 또는 코딩 문제에 접근하는 방법론입니다. 약어는 매개 변수, 반환, 예제, 의사 코드를 나타냅니다.
  • 매개변수
    입력되는 인수의 유형은 무엇이며 다중 또는 기본 인수가 있습니까?
  • 반환
    반환을 요청하는 내용과 유형은 무엇입니까?

  • 특정 인수를 사용하여 함수를 호출할 경우 발생할 것으로 예상되는 2-3개의 예를 제공하십시오. 엣지 케이스를 생각할 수 있습니까?
  • 의사 코드
    문제를 해결하는 방법에 대한 비공식적인 단계를 작성하십시오. 매개변수가 무엇이며 예상 수익에 도달하기 위해 어떤 단계를 거쳐야 하는지 생각해 보십시오. "종속성"을 나타내는 모든 문장은 들여쓰기를 해야 합니다.



  • 뒤집다()



    문자열이 주어지면 반대 순서로 새 문자열을 반환합니다.

  • P - 단일 문자열 인수

  • R - 원래 문자열 인수의 반대인 문자열

  • E - 공백, 대문자 및 구두점 설명

  • // reverse('hello world') --> 'dlrow olleh'
    // reverse('Love!') --> '!evoL'
    // reverse('JavaScript') --> 'tpircSavaJ'
    


  • P - 아래 참조

  • function reverse(str) {
      // With keyword let, declare & assign a variable reverseStr to ''
    
      // Iterate over str from the last idx to the 0th idx
        // Add the character at the current idx to reverseStr
    
      // return reverseStr
    
    }
    

    이제 의사 코드 절차를 코드로 변환합니다.

    해결책



    function reverse(str) {
      // With keyword let, declare & assign a variable reverseStr to ''
      let reverseStr = ''
      // Iterate over str from the last idx to the 0th idx
        // Add the character at the current idx to reverseStr
      for (let i=str.length-1; i>=0; i--) {
        reverseStr+=str[i]
      }
      // return reverseStr
      return reverseStr
    }
    

    대문자()



    문자열을 받는 함수를 작성하십시오. 함수는 문자열에 있는 각 단어의 첫 글자를 대문자로 표시한 다음 대문자로 표시된 문자열을 반환해야 합니다.

  • P - 단일 문자열 인수

  • R - 원래 문자열 인수의 각 단어의 첫 번째 문자가 대문자인 문자열

  • E - 공백 및 구두점 설명

  • //   capitalize('hello world!') --> 'Hello World!'
    //   capitalize('i love code') --> 'I Love Code'
    //   capitalize('one, two, three...') --> 'One, Two, Three..'
    


  • P - 아래 참조

  • function capitalize(str) {
      // Split the str argument by the spaces ' ', creating an array of words
    
      // With the array of words, use map method to capitalize each word's first element at index 0 & join it to the remaining word's letters
    
      // Rejoin the words by a space ' '
    
      // Wrap the code above in a return
    
    }
    

    이제 의사 코드 절차를 코드로 변환합니다.

    function capitalize(str) {
      // Split the str argument by the spaces ' ', creating an array of words
      str.split(' ')
      // With the array of words, use map method to capitalize each word's first element at index 0 & join it to the remaining word's letters
      .map(word => word[0].toUpperCase() + word.slice(1))
      // Rejoin the words by a space ' '
      .join(' ')
      // Wrap the code above in a return
    
    }
    

    마지막 단계에서는 return 키워드를 코드 블록의 맨 위로 가져와야 합니다.

    해결책



    function capitalize(str) {
      return str.split(' ')
                .map(word => word[0].toUpperCase() + word.slice(1))
                .join(' ')
    }
    

    결론



    알고리즘을 풀 때 매개변수를 생각하고 즉시 반환하는 것을 잊지 마십시오. 예제가 제공되지 않은 경우 이동하면서 테스트할 수 있도록 몇 가지를 직접 작성하십시오. 해결 방법에 대한 생각을 유사 코드화하고 코드로 변환할 수 있는 구문으로 유지합니다.

    기억하세요... 즐거운 코딩, 친구들! =)

    좋은 웹페이지 즐겨찾기