mirror of
https://github.com/krahets/hello-algo.git
synced 2026-08-12 11:50:58 +00:00
Polish the chapter
introduction, computational complexity.
This commit is contained in:
@@ -140,33 +140,33 @@ enum TimeComplexity {
|
||||
print("输入数据大小 n = \(n)")
|
||||
|
||||
var count = constant(n: n)
|
||||
print("常数阶的计算操作数量 = \(count)")
|
||||
print("常数阶的操作数量 = \(count)")
|
||||
|
||||
count = linear(n: n)
|
||||
print("线性阶的计算操作数量 = \(count)")
|
||||
print("线性阶的操作数量 = \(count)")
|
||||
count = arrayTraversal(nums: Array(repeating: 0, count: n))
|
||||
print("线性阶(遍历数组)的计算操作数量 = \(count)")
|
||||
print("线性阶(遍历数组)的操作数量 = \(count)")
|
||||
|
||||
count = quadratic(n: n)
|
||||
print("平方阶的计算操作数量 = \(count)")
|
||||
print("平方阶的操作数量 = \(count)")
|
||||
var nums = Array(stride(from: n, to: 0, by: -1)) // [n,n-1,...,2,1]
|
||||
count = bubbleSort(nums: &nums)
|
||||
print("平方阶(冒泡排序)的计算操作数量 = \(count)")
|
||||
print("平方阶(冒泡排序)的操作数量 = \(count)")
|
||||
|
||||
count = exponential(n: n)
|
||||
print("指数阶(循环实现)的计算操作数量 = \(count)")
|
||||
print("指数阶(循环实现)的操作数量 = \(count)")
|
||||
count = expRecur(n: n)
|
||||
print("指数阶(递归实现)的计算操作数量 = \(count)")
|
||||
print("指数阶(递归实现)的操作数量 = \(count)")
|
||||
|
||||
count = logarithmic(n: Double(n))
|
||||
print("对数阶(循环实现)的计算操作数量 = \(count)")
|
||||
print("对数阶(循环实现)的操作数量 = \(count)")
|
||||
count = logRecur(n: Double(n))
|
||||
print("对数阶(递归实现)的计算操作数量 = \(count)")
|
||||
print("对数阶(递归实现)的操作数量 = \(count)")
|
||||
|
||||
count = linearLogRecur(n: Double(n))
|
||||
print("线性对数阶(递归实现)的计算操作数量 = \(count)")
|
||||
print("线性对数阶(递归实现)的操作数量 = \(count)")
|
||||
|
||||
count = factorialRecur(n: n)
|
||||
print("阶乘阶(递归实现)的计算操作数量 = \(count)")
|
||||
print("阶乘阶(递归实现)的操作数量 = \(count)")
|
||||
}
|
||||
}
|
||||
|
||||
@@ -69,7 +69,7 @@ class MaxHeap {
|
||||
while true {
|
||||
// 获取节点 i 的父节点
|
||||
let p = parent(i: i)
|
||||
// 当“越过根节点”或“节点无需修复”时,结束堆化
|
||||
// 当“越过根节点”或“节点无须修复”时,结束堆化
|
||||
if p < 0 || maxHeap[i] <= maxHeap[p] {
|
||||
break
|
||||
}
|
||||
@@ -110,7 +110,7 @@ class MaxHeap {
|
||||
if r < size(), maxHeap[r] > maxHeap[ma] {
|
||||
ma = r
|
||||
}
|
||||
// 若节点 i 最大或索引 l, r 越界,则无需继续堆化,跳出
|
||||
// 若节点 i 最大或索引 l, r 越界,则无须继续堆化,跳出
|
||||
if ma == i {
|
||||
break
|
||||
}
|
||||
|
||||
@@ -18,7 +18,7 @@ func siftDown(nums: inout [Int], n: Int, i: Int) {
|
||||
if r < n, nums[r] > nums[ma] {
|
||||
ma = r
|
||||
}
|
||||
// 若节点 i 最大或索引 l, r 越界,则无需继续堆化,跳出
|
||||
// 若节点 i 最大或索引 l, r 越界,则无须继续堆化,跳出
|
||||
if ma == i {
|
||||
break
|
||||
}
|
||||
|
||||
@@ -84,7 +84,7 @@ class AVLTree {
|
||||
return leftRotate(node: node)
|
||||
}
|
||||
}
|
||||
// 平衡树,无需旋转,直接返回
|
||||
// 平衡树,无须旋转,直接返回
|
||||
return node
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user