1.2.2 compile an interval1d use case and accept an integer N from the command line. Read n intervals from the standard input (each interval is defined by a pair of double values) and print all the intersection interval pairs.
Solution:
Public class Test2
{
Public static void main (string [] ARGs)
{
Int n = integer. parseint (ARGs [0]);
Interval1d [] interarray = new interval1d [N];
Int Index = 0;
// Generate interval1d
While (! Stdin. isempty ())
{
Interarray [Index] = new interval1d (stdin. readdouble (), stdin. readdouble ());
Index ++;
If (Index = N) break;
} // End while
// Find Intersect
For (INT I = 0; I <n; I ++)
For (Int J = I + 1; j <n; j ++)
If (interarray [I]. intersects (interarray [J])
Stdout. printf ("% d (% F, % F) % d (% F, % F) \ n", I, interarray [I]. min (), interarray [I]. max (), J, interarray [J]. min (), interarray [J]. max ());
} // End main
} // End class
Additional instructions:
The first line of interval1d. Java in the http://algs4.cs.princeton.edu/code/: Package edu. Princeton. cs. algs4; needs to be commented out.
At the same time, the Intersect provided in the textbook is adjusted to intersects.
Algs4-1.2.2 to write an interval1d use case