递归函数的运用 官网
递归函数在很多场景下都有应用,比如遍历树形结构。 下面是一个简单的示例,用于遍历二叉树: package mainimport "fmt"// 定义二叉树节点结构type TreeNode struct { Val int Left *TreeNode Right *TreeNode}// 前序遍历二叉树的递归函数func preorderTraversal(root *TreeNode) { if root == nil { return } fmt.Print(root.Val, " ") preorderTraversal(root.Left) preorderTraversal(root.Right)}func main() { // 构建一个简单的二叉树 root := TreeNode{Val: 2} root.Right = &TreeNode{Val: 3} preorderTraversal(root) // 输出: 1 2 3} 在这个示例中,preorderTraversal函数通过递归的方式前序遍历二叉树。 特别提示:在使用递归遍历树形结构时,要注意节点为空的情况,避免出现空指针异常。