void insert(int new_y) { int j; if (num_y = 0) { // y empty so far, easy case y[0] = new_y; return; } // need to insert just before the first y // element that new_y is less than for (j = 0; j < num_y; j++) { if (new_y < y[j]) { // shift y[j], y[j+1],... rightward // before inserting new_y scoot_over(j); y[j] = new_y; return; } } }
void insert(int new_y) { int j; //渡す値が1つの場合y[0]に格納して終了 // = を ==に修正(bug) if (num_y == 0) { y[0] = new_y; return; } //渡す値が複数の場合 for (j = 0; j < num_y; j++) { //新しく渡ってきた値が格納されているものよりも小さければscoot_overへ if (new_y < y[j]) { scoot_over(j); // 新しい値を前に格納 y[j] = new_y; return; } // もうひとつの場合: new_y > 既存のyの全要素 y[num_y] = new_y; } }