So I basically have a max heap stored in an arraylist, for example:
[6, 5, 4, 3]
I am trying to print the elements of the arraylist to display each level of the heap separated by commas, as well as each element in the same level separated by a " " space. Also, the string must end with a period. for example:
6, 5 4, 3.
This is what I have so far:
public void display() {
String heap = "Current heap is: ";
for(int i = 0; i <= data.size(); i++){
for(int j = 0; j < Math.pow(2, i) && j + Math.pow(2, i) <= data.size(); j++){
heap = heap +data.get(j + (int)Math.pow(2, i) - 1);
}
heap = heap +",";
}
System.out.println(heap);
}
Output:
6,54,3,,,
Notice: 'data' is the name of my arraylist.
question from:
https://stackoverflow.com/questions/65947139/printing-an-arraylist-heap-in-a-straight-line-separated-by-commas-at-each-level 与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…