All pastes #632026 Raw Edit

Mine

public text v1 · immutable
#632026 ·published 2007-07-24 15:13 UTC
rendered paste body
	void heapv(double te1[], double te2[], double te3[], int NN)
	{
		int kk, kks, ii, jj, mm;
		double b1, b2, b3, c1, c2, c3;
		kks = (int) (NN / 2);
		for (kk = kks; kk >= 1; kk--)
		{
			ii = kk;
			b1 = te1[ii - 1];
			b2 = te2[ii - 1];
			b3 = te3[ii - 1];
			while (2 * ii <= NN)
			{
				jj = 2 * ii;
				if (jj + 1 <= NN)
				{
					if (te1[jj - 1] < te1[jj])
					{
						jj++;
					}
				}
				if (te1[jj - 1] <= b1)
				{
					break;
				}
				te1[ii - 1] = te1[jj - 1];
				te2[ii - 1] = te2[jj - 1];
				te3[ii - 1] = te3[jj - 1];
				ii = jj;
			}// wend
			te1[ii - 1] = b1;
			te2[ii - 1] = b2;
			te3[ii - 1] = b3;
		}// next kk
		for (mm = NN - 1; mm >= 1; mm--)
		{
			c1 = te1[mm];
			c2 = te2[mm];
			c3 = te3[mm];
			te1[mm] = te1[0];
			te2[mm] = te2[0];
			te3[mm] = te3[0];
			ii = 1;
			while (2 * ii <= mm)
			{
				kk = 2 * ii;
				if (kk + 1 <= mm)
				{
					if (te1[kk - 1] <= te1[kk])
					{
						kk++;
					}
				}
				if (te1[kk - 1] <= c1)
				{
					break;
				}
				te1[ii - 1] = te1[kk - 1];
				te2[ii - 1] = te2[kk - 1];
				te3[ii - 1] = te3[kk - 1];
				ii = kk;
			}// wend
			te1[ii - 1] = c1;
			te2[ii - 1] = c2;
			te3[ii - 1] = c3;
		}// next mm
	}