public class QuicksortProblem extends AbstractDivideAndConquerProblem<QuicksortProblem,QuicksortSolution>
Constructor and Description |
---|
QuicksortProblem(int... numbers) |
QuicksortProblem(int low,
int high,
int... numbers)
An implementation of a quicksort problem.
|
QuicksortProblem(int identifier,
int low,
int high,
int... numbers) |
Modifier and Type | Method and Description |
---|---|
QuicksortSolution |
baseSolve()
Solves the problem, only if it is a base case problem.
|
QuicksortSolution |
baseSolve(int low,
int high,
int[] numbers) |
DividedDCProblem<QuicksortProblem> |
divide()
Divides the problem and creates a
DividedDCProblem . |
int |
getHigh() |
int |
getLow() |
int[] |
getNumbers() |
boolean |
isBaseCase()
Determines whether or not the problem is a base case.
|
QuicksortSolution |
solveDirectly() |
String |
toString() |
getID
public QuicksortProblem(int... numbers)
public QuicksortProblem(int low, int high, int... numbers)
low
- Pointer to the lower bound of indices to be compared in the arrayhigh
- Pointer to the upper bound of indices to be compared in the arraynumbers
- Array to be sortedpublic QuicksortProblem(int identifier, int low, int high, int... numbers)
public int getLow()
public int getHigh()
public int[] getNumbers()
public boolean isBaseCase()
AbstractDivideAndConquerProblem
isBaseCase
in class AbstractDivideAndConquerProblem<QuicksortProblem,QuicksortSolution>
public DividedDCProblem<QuicksortProblem> divide()
AbstractDivideAndConquerProblem
DividedDCProblem
.divide
in class AbstractDivideAndConquerProblem<QuicksortProblem,QuicksortSolution>
DividedDCProblem
public QuicksortSolution solveDirectly()
public QuicksortSolution baseSolve()
AbstractDivideAndConquerProblem
baseSolve
in class AbstractDivideAndConquerProblem<QuicksortProblem,QuicksortSolution>
AbstractDivideAndConquerSolution
public QuicksortSolution baseSolve(int low, int high, int[] numbers)
Copyright © 2015–2020. All rights reserved.