프로그래밍 문제 해결을 위한 5단계

3709 단어 algorithmsprogramming
문제를 해결하는 것은 프로그래머의 빵과 버터이며 모든 사람은 자신의 방법이 있습니다. 저는 개인적으로 문제를 해결할 뿐만 아니라 더 빠르고 효율적으로 수행하는 데 도움이 될 가능성이 가장 높은 5단계를 찾았습니다.

1. 다른 사람에게 설명할 수 있을 때까지 문제를 여러 번 읽으십시오.





이것은 가장 중요한 단계입니다. 문제를 완전히 이해할 때까지 여러 번 읽고, 이해하지 못하면 풀 수 없습니다. 문제를 이해했는지 알 수 있는 가장 좋은 방법은 다른 사람에게 설명할 수 있는 것입니다.

2. 수동으로 문제 해결



Nothing can be automated that cannot be done manually!



우리가 작성하는 모든 코드에는 기반이 있으며 수동 프로세스입니다. 즉, 먼저 수동으로 문제를 해결하십시오. 이렇게 하면 자동화하려는 대상을 정확히 알 수 있으므로 미친 사람처럼 코드를 작성하기 시작하면 낭비되는 많은 시간을 절약할 수 있습니다.

하나 이상의 입력과 몇 가지 코너 케이스를 사용하여 프로세스를 테스트하여 유효성을 검사하고 머릿속에서 취하는 모든 단계에 세심한 주의를 기울이고 각각의 단계를 기록하십시오.

3. 수동 솔루션 개선



프로세스를 개선할 수 있는지, 더 쉬운 방법이 있는지 또는 루프와 같이 단순화하기 위해 잘라낼 수 있는 단계가 있는지 확인하십시오. 이 단계는 매우 중요합니다. 코드에서보다 머리에서 프로세스를 재구성하는 것이 훨씬 더 쉽다는 것을 기억하십시오.

이 시점에서 코드를 작성하고 싶은 유혹을 느낄 것입니다. 아직 하지 마세요. 다루어야 할 단계가 한 단계 더 있습니다. 이렇게 하면 최종 코드를 더 쉽게 작성할 수 있습니다.

4. 유사 코드 작성



의사 코드는 프로그램이 수행해야 하는 작업에 대한 자세한 설명으로, 문제를 해결하는 데 필요한 모든 코드 줄을 작성하는 데 도움이 됩니다.

숙련된 프로그래머는 때때로 이 단계를 생략하지만, 경험이 있든 없든 장담할 수 있습니다. 의사 코드를 작성하면 의사 코드의 각 줄을 실제 코드로 변환하기만 하면 되기 때문에 최종 코드를 작성하는 과정이 훨씬 쉬워질 것입니다. 암호.

숫자의 제곱 값을 반환하는 함수를 작성하는 데 필요한 단계에 대해 생각해 봅시다.

// Initialize a variable with a 'n' value

// Multiply variable by it self

// Return the result of that multiplication


이제 코드가 수행해야 하는 작업을 정확히 알고 있으므로 한 단계 더 수행해야 합니다.

5. 유사 코드를 실제 코드로 교체



재미있는 부분이 있습니다. 이제 프로그램이 수행해야 할 작업을 확실히 알았으므로 코드를 작성하고 테스트하기만 하면 됩니다. 그 과정에서 항상 코드를 개선할 수 있음을 기억하십시오.

정사각형 예제를 사용하겠습니다(데모용으로 매우 간단함).

function square(n) { 
    // Initialize a variable with a 'n' value
    const initialValue = n
    // Multiply variable by it self
    const squaredValue = initialValue * initialValue
    // Return the result of that multiplication
    return squaredValue
}


코드 최적화:

function square(n) { 
    return n * n
} 


자!

뻔한 과정처럼 보일 수도 있지만 대부분의 사람들은 절반을 생략하고 코딩을 시작하여 귀중한 시간을 낭비하게 됩니다.

문제가 아무리 복잡하더라도 이 5단계를 따르면 문제를 더 짧은 시간에 덜 골치 아프게 해결하는 데 도움이 될 것입니다.

참고: 문제가 너무 복잡한 경우 작은 문제로 나누면 “Divide and conquer”이라는 기술이 사용됩니다.

site에 원래 게시됨 - 2016년 5월 26일

좋은 웹페이지 즐겨찾기