This commit is contained in:
sjinzh 2023-01-10 19:29:57 +08:00
parent 2572b83540
commit a667e71b20
3 changed files with 15 additions and 11 deletions

View File

@ -56,11 +56,13 @@ int bubbleSort(int *nums, int n) {
for (int i = n - 1; i > 0; i--) { for (int i = n - 1; i > 0; i--) {
// 内循环:冒泡操作 // 内循环:冒泡操作
for (int j = 0; j < i; j++) { for (int j = 0; j < i; j++) {
// 交换 nums[j] 与 nums[j + 1] if (nums[j] > nums[j + 1]) {
int tmp = nums[j]; // 交换 nums[j] 与 nums[j + 1]
nums[j] = nums[j + 1]; int tmp = nums[j];
nums[j + 1] = tmp; nums[j] = nums[j + 1];
count += 3; // 元素交换包含 3 个单元操作 nums[j + 1] = tmp;
count += 3; // 元素交换包含 3 个单元操作
}
} }
} }
return count; return count;

View File

@ -5,7 +5,7 @@
const std = @import("std"); const std = @import("std");
// Zig Version: 0.10.0 // Zig Version: 0.10.0
// Zig Codes Build Command: zig build // Build Command: zig build
pub fn build(b: *std.build.Builder) void { pub fn build(b: *std.build.Builder) void {
const target = b.standardTargetOptions(.{}); const target = b.standardTargetOptions(.{});
const mode = b.standardReleaseOptions(); const mode = b.standardReleaseOptions();

View File

@ -59,11 +59,13 @@ fn bubbleSort(nums: []i32) i32 {
var j: usize = 0; var j: usize = 0;
// //
while (j < i) : (j += 1) { while (j < i) : (j += 1) {
// nums[j] nums[j + 1] if (nums[j] > nums[j + 1]) {
var tmp = nums[j]; // nums[j] nums[j + 1]
nums[j] = nums[j + 1]; var tmp = nums[j];
nums[j + 1] = tmp; nums[j] = nums[j + 1];
count += 3; // 3 nums[j + 1] = tmp;
count += 3; // 3
}
} }
} }
return count; return count;