mirror of
https://github.com/krahets/hello-algo.git
synced 2025-07-07 06:44:57 +08:00
chore: update driver code (#1265)
This commit is contained in:
@ -62,17 +62,18 @@ def nested_for_loop(n)
|
||||
end
|
||||
|
||||
### Driver Code ###
|
||||
if __FILE__ == $0
|
||||
n = 5
|
||||
|
||||
n = 5
|
||||
res = for_loop(n)
|
||||
puts "\nfor 循环的求和结果 res = #{res}"
|
||||
|
||||
res = for_loop(n)
|
||||
puts "\nfor 循环的求和结果 res = #{res}"
|
||||
res = while_loop(n)
|
||||
puts "\nwhile 循环的求和结果 res = #{res}"
|
||||
|
||||
res = while_loop(n)
|
||||
puts "\nwhile 循环的求和结果 res = #{res}"
|
||||
res = while_loop_ii(n)
|
||||
puts "\nwhile 循环(两次更新)求和结果 res = #{res}"
|
||||
|
||||
res = while_loop_ii(n)
|
||||
puts "\nwhile 循环(两次更新)求和结果 res = #{res}"
|
||||
|
||||
res = nested_for_loop(n)
|
||||
puts "\n双层 for 循环的遍历结果 #{res}"
|
||||
res = nested_for_loop(n)
|
||||
puts "\n双层 for 循环的遍历结果 #{res}"
|
||||
end
|
||||
|
@ -53,17 +53,18 @@ def fib(n)
|
||||
end
|
||||
|
||||
### Driver Code ###
|
||||
if __FILE__ == $0
|
||||
n = 5
|
||||
|
||||
n = 5
|
||||
res = recur(n)
|
||||
puts "\n递归函数的求和结果 res = #{res}"
|
||||
|
||||
res = recur(n)
|
||||
puts "\n递归函数的求和结果 res = #{res}"
|
||||
res = for_loop_recur(n)
|
||||
puts "\n使用迭代模拟递归求和结果 res = #{res}"
|
||||
|
||||
res = for_loop_recur(n)
|
||||
puts "\n使用迭代模拟递归求和结果 res = #{res}"
|
||||
res = tail_recur(n, 0)
|
||||
puts "\n尾递归函数的求和结果 res = #{res}"
|
||||
|
||||
res = tail_recur(n, 0)
|
||||
puts "\n尾递归函数的求和结果 res = #{res}"
|
||||
|
||||
res = fib(n)
|
||||
puts "\n斐波那契数列的第 #{n} 项为 #{res}"
|
||||
res = fib(n)
|
||||
puts "\n斐波那契数列的第 #{n} 项为 #{res}"
|
||||
end
|
||||
|
@ -72,20 +72,21 @@ def build_tree(n)
|
||||
end
|
||||
|
||||
### Driver Code ###
|
||||
if __FILE__ == $0
|
||||
n = 5
|
||||
|
||||
n = 5
|
||||
# 常数阶
|
||||
constant(n)
|
||||
|
||||
# 常数阶
|
||||
constant(n)
|
||||
# 线性阶
|
||||
linear(n)
|
||||
linear_recur(n)
|
||||
|
||||
# 线性阶
|
||||
linear(n)
|
||||
linear_recur(n)
|
||||
# 平方阶
|
||||
quadratic(n)
|
||||
quadratic_recur(n)
|
||||
|
||||
# 平方阶
|
||||
quadratic(n)
|
||||
quadratic_recur(n)
|
||||
|
||||
# 指数阶
|
||||
root = build_tree(n)
|
||||
print_tree(root)
|
||||
# 指数阶
|
||||
root = build_tree(n)
|
||||
print_tree(root)
|
||||
end
|
||||
|
@ -128,37 +128,38 @@ def factorial_recur(n)
|
||||
end
|
||||
|
||||
### Driver Code ###
|
||||
if __FILE__ == $0
|
||||
# 可以修改 n 运行,体会一下各种复杂度的操作数量变化趋势
|
||||
n = 8
|
||||
puts "输入数据大小 n = #{n}"
|
||||
|
||||
# 可以修改 n 运行,体会一下各种复杂度的操作数量变化趋势
|
||||
n = 8
|
||||
puts "输入数据大小 n = #{n}"
|
||||
count = constant(n)
|
||||
puts "常数阶的操作数量 = #{count}"
|
||||
|
||||
count = constant(n)
|
||||
puts "常数阶的操作数量 = #{count}"
|
||||
count = linear(n)
|
||||
puts "线性阶的操作数量 = #{count}"
|
||||
count = array_traversal(Array.new(n, 0))
|
||||
puts "线性阶(遍历数组)的操作数量 = #{count}"
|
||||
|
||||
count = linear(n)
|
||||
puts "线性阶的操作数量 = #{count}"
|
||||
count = array_traversal(Array.new(n, 0))
|
||||
puts "线性阶(遍历数组)的操作数量 = #{count}"
|
||||
count = quadratic(n)
|
||||
puts "平方阶的操作数量 = #{count}"
|
||||
nums = Array.new(n) { |i| n - i } # [n, n-1, ..., 2, 1]
|
||||
count = bubble_sort(nums)
|
||||
puts "平方阶(冒泡排序)的操作数量 = #{count}"
|
||||
|
||||
count = quadratic(n)
|
||||
puts "平方阶的操作数量 = #{count}"
|
||||
nums = Array.new(n) { |i| n - i } # [n, n-1, ..., 2, 1]
|
||||
count = bubble_sort(nums)
|
||||
puts "平方阶(冒泡排序)的操作数量 = #{count}"
|
||||
count = exponential(n)
|
||||
puts "指数阶(循环实现)的操作数量 = #{count}"
|
||||
count = exp_recur(n)
|
||||
puts "指数阶(递归实现)的操作数量 = #{count}"
|
||||
|
||||
count = exponential(n)
|
||||
puts "指数阶(循环实现)的操作数量 = #{count}"
|
||||
count = exp_recur(n)
|
||||
puts "指数阶(递归实现)的操作数量 = #{count}"
|
||||
count = logarithmic(n)
|
||||
puts "对数阶(循环实现)的操作数量 = #{count}"
|
||||
count = log_recur(n)
|
||||
puts "对数阶(递归实现)的操作数量 = #{count}"
|
||||
|
||||
count = logarithmic(n)
|
||||
puts "对数阶(循环实现)的操作数量 = #{count}"
|
||||
count = log_recur(n)
|
||||
puts "对数阶(递归实现)的操作数量 = #{count}"
|
||||
count = linear_log_recur(n)
|
||||
puts "线性对数阶(递归实现)的操作数量 = #{count}"
|
||||
|
||||
count = linear_log_recur(n)
|
||||
puts "线性对数阶(递归实现)的操作数量 = #{count}"
|
||||
|
||||
count = factorial_recur(n)
|
||||
puts "阶乘阶(递归实现)的操作数量 = #{count}"
|
||||
count = factorial_recur(n)
|
||||
puts "阶乘阶(递归实现)的操作数量 = #{count}"
|
||||
end
|
||||
|
@ -24,11 +24,12 @@ def find_one(nums)
|
||||
end
|
||||
|
||||
### Driver Code ###
|
||||
|
||||
for i in 0...10
|
||||
n = 100
|
||||
nums = random_numbers(n)
|
||||
index = find_one(nums)
|
||||
puts "\n数组 [ 1, 2, ..., n ] 被打乱后 = #{nums}"
|
||||
puts "数字 1 的索引为 #{index}"
|
||||
if __FILE__ == $0
|
||||
for i in 0...10
|
||||
n = 100
|
||||
nums = random_numbers(n)
|
||||
index = find_one(nums)
|
||||
puts "\n数组 [ 1, 2, ..., n ] 被打乱后 = #{nums}"
|
||||
puts "数字 1 的索引为 #{index}"
|
||||
end
|
||||
end
|
||||
|
Reference in New Issue
Block a user