Demo di sini adalah algoritma akumulasi, seperti 1,2,3,4...n
Yaitu: jumlah = 1+2+3+4...+n;
Kita bisa melakukan ini:
untuk (panjang i = 1,v = nilai; i <= v; i++) {
jumlah += saya;
}
jumlah pengembalian;
}
/**
* Implementasi algoritma akumulasi<br>
*
* @tanggal 16-4-2013
* @penulis hongten
*
*/
Kelas publik AddAritmatika {
/**
* Loop untuk menerapkan metode akumulasi
* @nilai param
* @kembali
*/
siklus panjang statis pribadi (nilai panjang) {
jumlah panjang = 0;
untuk (panjang i = 1,v = nilai; i <= v; i++) {
jumlah += saya;
}
jumlah pengembalian;
}
/**
* Metode Gaussian:<code>(n+1)*n/2</code><br>
* Anda dapat membaca selengkapnya dari <a href="http://zhidao.baidu.com/question/411055258.html">Di sini</a>
* @nilai param
* @kembali
*/
private static long gaosi(nilai panjang) {
jumlah panjang = 0;
jumlah = (nilai + 1) * nilai / 2;
jumlah pengembalian;
}
public static void main(String[] args) {
//Bersihkan memori, tetapi mungkin tidak dapat dijalankan.
Sistem.gc();
// Anda harus mengubah nilainya, lalu mendapatkan hasil yang berbeda
nilai panjang = 10000000;
jumlah panjang = 0;
mulai panjang = System.currentTimeMillis();
jumlah = siklus(nilai);
ujung panjang = Sistem.currentTimeMillis();
System.out.println("Gunakan metode akumulasi loop untuk mengakumulasikan dari [1] ke ["+nilai+"], waktu yang dibutuhkan: ["+(akhir - awal) + "]ms, hasil: "+ jumlah);
//Bersihkan memori, tetapi mungkin tidak dapat dijalankan.
Sistem.gc();
mulai = Sistem.currentTimeMillis();
jumlah = gaosi(nilai);
end = Sistem.currentTimeMillis();
System.out.println("Gunakan metode Gaussian untuk mengakumulasikan dari [1] ke ["+nilai+"], waktu yang dibutuhkan: ["+(akhir - awal) + "]ms, hasil: "+ jumlah);
}
}
Tentu saja, hasil pengoperasian mesin dengan konfigurasi berbeda berbeda...
Status operasi mesin saya: