-2
function partition(num,begin,end){

    var pivot= num[begin];

    var beginning = begin-1 ;

    var ending = end+1 ;

    // over here the while loop says that the argument is true but,   
    // what is true, and how does this thing work  

    while (true) {

       beginning++;

        while ( beginning< end && num[beginning] < pivot)

            beginning++;

        ending--;

        while (ending>begin && num[ending] > pivot)

            ending--;

        if (beginning < ending)

            swap(num, beginning, ending);
        else

            return ending;
    }
function swap(num, begin, end) {

    var temp = num[begin];

    num[begin] = num[end];

    num[end] = temp;
}

関数パーティションのwhileループ、それは機能しますが、それがどのように機能し、コードがどれほど効率的かを知りたいです、ありがとう

4

3 に答える 3

1

ループを作成するときwhile、括弧内に入れるビットは評価されるです。ループに入ると、プログラムは括弧内の式が に評価されるかどうかをチェックします。そうである場合、プログラムはループに入り、ループの最後に到達するまで実行されます。true

breakここに示すように、これはまたはのようないくつかのステートメントによって中断される可能性がありreturnます。このループは、 に到達するまで継続的に実行されることを意図していreturnます。

に評価される式の例true:

1+1 == 2

x < 100、どこxで 60

true、これはあなたが持っているものです。

于 2013-11-05T16:59:04.020 に答える
0

while (評価された条件の結果) {

}

while は、( ) の間が true と評価された場合に実行されます。そのため、 while(true) と入力すると、true になります。while (1+1==2) と入力した場合は真であり、上記と同じです。while( 1+1 != 4) と入力した場合も真です。 = など

于 2013-11-05T17:00:25.193 に答える
0

条件が真である限り、while ループが実行されます。
while(true) は、内部で終了していない場合 (break; return; など)、「永久に」実行され、常に true になります。while(false) は一度も実行されません。

于 2013-11-05T16:58:29.560 に答える