Java Data structures and algorithms Please use the java cla
Java - Data structures and algorithms?. Please use the java class and methods provided rather than create your own.
Solution
public PascalTriangle(){
}
public PascalTriangle(int numberofRows){
for (int i = 0; i < numberofRows; i++){
triangle.add(createNextRow(numberofRows));
}
}
private ArrayList<Integer> createNextRow(int rowIndex){
ArrayList<Integer> nextRow = new ArrayList<Integer>();
ArrayList<Integer> lastRow = triangle.get(triangle.size() - 1);
nextRow.add(1);
if (rowIndex == 0){
for (int i = 1; i < rowIndex; i++){
int val = lastRow.get(i-1) + lastRow.get(i);
nextRow.add(val);
}
return nextRow;
}
nextRow.add(1);
return nextRow;
}
public void display(){
for (int i = 0; i < triangle.size(); i++){
for (int j = 0; j < triangle.get(i).size(); j++){
System.out.println(triangle.get(i).get(j)+\" \");
}
System.out.println();
}
}
public void printHorizontalSums(){
for (int i = 0; i < triangle.size(); i++){
int total = 0;
for (int j = 0; j < triangle.get(i).size(); j++){
total += triangle.get(i).get(j);
}
System.out.println(total);
}
}
public int howManyWays(int totalObjects, int numberOfObjectsToChoose){
if (totalObjects < triangle.size() && numberOfObjectsToChoose <= triangle.get(totalObjects).size())
return triangle.get(totalObjects).get(numberOfObjectsToChoose);
return INVALID_INPUT;
}
