@@ -35,6 +35,7 @@ public class AlgVisualizer implements ActionListener, ChangeListener {
3535 private int n ;
3636 private int numSwaps ;
3737 private int delay ;
38+ private long totalDelay ;
3839 private Integer indexComparisons ;
3940 private long startTime ; // start time of a sort
4041 private long endTime ; // end time of a sort
@@ -280,6 +281,7 @@ public void resetTime() {
280281 endTime = 0 ;
281282 visualizationTime = 0 ;
282283 sortingTime = 0 ;
284+ totalDelay = 0 ;
283285 }
284286
285287 public Integer [] shuffleArr (Integer [] arr ) {
@@ -310,13 +312,16 @@ public Integer[] fillArr(Integer[] arr) {
310312 */
311313 public void updatePerformance () {
312314 numSwaps = arrDisplay .getSwappedIndexes ().size ();
313-
315+ System . out . println ( "total delay " + totalDelay );
314316 if (!getSort ().equals ("Not Sorting" ) && arrDisplay .getNumChunks () == 1 ) {
315317 visualizationTime = System .currentTimeMillis () - startTime ;
316- sortingTime = visualizationTime - ( delay * ( arrDisplay . getNumChunks () - 1 )) ;
318+ sortingTime = visualizationTime - totalDelay ;
317319 } else if (arrDisplay .getNumChunks () > 1 ) {
318320 visualizationTime = System .currentTimeMillis () - startTime ;
319- sortingTime = sortingTime + (System .currentTimeMillis () - sortingTime );
321+ sortingTime = visualizationTime - totalDelay ;
322+ }
323+ if (stopSort ) {
324+ resetTime ();
320325 }
321326
322327 String performance = String .format (
@@ -475,4 +480,12 @@ public JSlider getFPSslider() {
475480 public void setFPSslider (JSlider fPSslider ) {
476481 FPSslider = fPSslider ;
477482 }
483+
484+ public long getTotalDelay () {
485+ return totalDelay ;
486+ }
487+
488+ public void setTotalDelay (long totalDelay ) {
489+ this .totalDelay = totalDelay ;
490+ }
478491}
0 commit comments