プログラミング問題を解く5ステップ


問題の解決は、プログラマのパンとバターであり、誰もが自分の方法を持って、私は個人的には、問題を解決するためだけでなく、より速く、より効率的にそれを行うために、あなたを助ける可能性が高い可能性が高い5つのステップを発見した.

1 .誰か他の人に説明するまで、何度か問題を読みなさい



これは、最も重要なステップでは、問題をいくつかの回を読んで、完全に理解するまでは、理解していない場合は、それを解決することはできません.あなたが問題を理解しているかどうかを知る最良の方法は他の誰かにそれを説明できることです.

2 .問題を解決する


Nothing can be automated that cannot be done manually!


我々が書くどんなコードも基礎を持ちます、そして、それは手動のプロセスです.これは、問題を解決する手動で最初に、その方法を正確に何を自動化したい知って、これはあなただけのマニフェストのようなコードを書き始める場合は無駄に多くの時間を節約します.
テストを1つ以上の入力といくつかの角のケースでそれを検証するために、あなたの頭の中に取るすべての1つのステップに細心の注意を払うと、あなたのプロセスをテストし、それぞれをカウントします.

3 .マニュアルソリューションの改善


より簡単な方法がある場合、またはそれを簡素化するためにカットすることができますいくつかの手順がある場合は、あなたのプロセスをより良くすることができます参照してください.このステップは非常に重要であり、それはあなたのコードにあるよりもあなたの頭の中であなたのプロセスを再構築するのはずっと簡単です覚えておいてください.
この時点で、いくつかのコードを書くように誘惑される、まだそれをしないでください、我々はカバーするもう一つのステップを持って、私はあなたの最終的なコードを書くことが容易になると約束します.

4擬似コードを書く


擬似コードは、プログラムが行う必要がありますの詳細な説明は、これはあなたの問題を解決するために必要なコードのすべての行を書くのに役立ちます.
経験豊富なプログラマは時にはこのステップを省略するが、私はあなたがどのように経験しても保証することができます、いくつかの擬似コードを記述する場合は、あなたの最後のコードを書くプロセスは、簡単に実際のコードに擬似コードの各行を翻訳する必要がありますので、簡単になります.
数の二乗値を返す関数を書くのに必要な手順を考えてみましょう.
// Initialize a variable with a 'n' value

// Multiply variable by it self

// Return the result of that multiplication
今、私たちのコードが何をするべきかを正確に知っています.

擬似コードの実際のコードへの置換


ここでは楽しい部分です、あなたがプログラムがするべきことを確かに知っている今、若干のコードを書いて、それをテストしてください.あなたのコードを常に道に沿って行うことができます覚えています.
私たちの四角い例を使いましょう.
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 - 05/26/2016に掲載されました