طريقة فرز الفقاعات : السجلات ذات الكلمات الرئيسية الأصغر تشبه الفقاعات التي تطفو واحدة تلو الأخرى ، والسجلات ذات الكلمات الرئيسية الأكبر تشبه الحجارة ، وواحدة من أكبر الأحجار تغرق في القاع في كل رحلة.
جوهر الخوارزمية: (القيمة القصوى هي النقطة الرئيسية ، يجب وضعها في النهاية ، وبالتالي فإن الحلقة مثل هذا) في كل مرة ، يتم إجراء المقارنة من الموضع الأول إلى القاع ، وترتفع القيمة الدنيا مرة واحدة ، والتقدم الأخير (أي الرقم الأخير تم تحديده للتو من خلال الحد الأقصى لقيمة لم يعد يشارك في المقارنة ، يتم تخفيض عدد المقارنات بمقدار 1)
التعقيد: التعقيد الزمني O (N2) ، تعقيد الفضاء O (1)
رمز مصدر Java (تم تشغيله بنجاح ، مطلوب فئة التاريخ)
نسخة الكود كما يلي:
plubblesort الفراغ الثابت العام (تاريخ [] أيام) {
int len = days.length ؛
تاريخ التاريخ
لـ (int i = len-1 ؛ i> = 1 ؛ i--) {
لـ (int j = 0 ؛ j <i ؛ j ++) {
if (Days [j] .compare (Days [J + 1])> 0) {
temp = days [j + 1] ؛
أيام [j + 1] = أيام [j] ؛
أيام [ي] = درجة الحرارة ؛
}
}
}
}
تاريخ الفصل {
سنة ، الشهر ، اليوم ؛
التاريخ (int y ، int m ، int d) {
سنة = ص ؛
الشهر = م ؛
اليوم = د ؛
}
int العامة مقارنة (تاريخ التاريخ) {
سنة العودة
: شهر> تاريخ؟
: اليوم> يوم؟
}
print print print () {
System.out.println (year + "" + month + "" + day) ؛
}
}
نسخة الكود كما يلي:
حزمة testsortalgorithm ؛
الطبقة العامة bubblesort {
الفراغ الثابت العام الرئيسي (سلسلة [] args) {
int array [] = {5 ، 6 ، 8 ، 4 ، 2 ، 4 ، 9 ، 0} ؛
Bubblesort (صفيف) ؛
لـ (int i = 0 ؛ i <array.length ؛ i ++) {
System.out.println (Array [i]) ؛
}
}
pblessortor الفراغ الثابت العام (int array []) {
درجة حرارة
لـ (int i = array.length-1 ؛ i> 0 ؛ i--) {
لـ (int j = 0 ؛ j <i ؛ j ++) {
if (Array [J]> Array [J + 1]) {
Temp = Array [J] ؛
صفيف [j] = صفيف [j + 1] ؛
صفيف [j + 1] = temp ؛
}
}
}
}
}