mirror of
				https://github.com/krahets/hello-algo.git
				synced 2025-11-04 14:18:20 +08:00 
			
		
		
		
	
		
			
				
	
	
		
			41 lines
		
	
	
		
			976 B
		
	
	
	
		
			Swift
		
	
	
	
	
	
			
		
		
	
	
			41 lines
		
	
	
		
			976 B
		
	
	
	
		
			Swift
		
	
	
	
	
	
/**
 | 
						||
 * File: binary_tree.swift
 | 
						||
 * Created Time: 2023-01-18
 | 
						||
 * Author: nuomi1 (nuomi1@qq.com)
 | 
						||
 */
 | 
						||
 | 
						||
import utils
 | 
						||
 | 
						||
@main
 | 
						||
enum BinaryTree {
 | 
						||
    /* Driver Code */
 | 
						||
    static func main() {
 | 
						||
        /* 初始化二叉树 */
 | 
						||
        // 初始化结点
 | 
						||
        let n1 = TreeNode(x: 1)
 | 
						||
        let n2 = TreeNode(x: 2)
 | 
						||
        let n3 = TreeNode(x: 3)
 | 
						||
        let n4 = TreeNode(x: 4)
 | 
						||
        let n5 = TreeNode(x: 5)
 | 
						||
        // 构建引用指向(即指针)
 | 
						||
        n1.left = n2
 | 
						||
        n1.right = n3
 | 
						||
        n2.left = n4
 | 
						||
        n2.right = n5
 | 
						||
        print("\n初始化二叉树\n")
 | 
						||
        PrintUtil.printTree(root: n1)
 | 
						||
 | 
						||
        /* 插入与删除结点 */
 | 
						||
        let P = TreeNode(x: 0)
 | 
						||
        // 在 n1 -> n2 中间插入结点 P
 | 
						||
        n1.left = P
 | 
						||
        P.left = n2
 | 
						||
        print("\n插入结点 P 后\n")
 | 
						||
        PrintUtil.printTree(root: n1)
 | 
						||
        // 删除结点 P
 | 
						||
        n1.left = n2
 | 
						||
        print("\n删除结点 P 后\n")
 | 
						||
        PrintUtil.printTree(root: n1)
 | 
						||
    }
 | 
						||
}
 |