No trecho de código proposto temos o metodo particiona com a assinatura particiona(Nota[], int inicial, int termino). Porém o argumento inicial não é utilizado em lugar algum e em for(int atual=0) a variável está sempre sendo inicializada como 0.
Acrédito que o argumento acabou sobrando com as refatorações, pois é necessário que a variável analisando seja sempre inicializada mesmo. Seria isso?