递归遍历树结构数据(js,vue)

这篇具有很好参考价值的文章主要介绍了递归遍历树结构数据(js,vue)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

问题描述1:把树形数据里面的数字类型的id转化为String类型

 // 递归遍历树,通过map遍历直接修改原数组数据,数组其他的数据不变
    getNewTree(obj){
        obj.map(item=>{
          if(item.parentId){
            item.parentId=toString(item.parentId)
          }
          item.id=toString(item.id)
          if(item.children&&item.children.length>0){
            console.log('item.children',item.children);
            this.getNewTree(item.children)
          }
        })
        console.log('obj',obj);
        return obj
    },

数据实例:

obj=[
    {
        id: 0,
        name: "根部门",
        children: [
            {
                id: 1,
                parentId: 0,
                name: "总经办",
                children: [
                    {
                        id: 2,
                        parentId: 1,
                        name: "行政中心",
                        children: [
                            {
                                id: 1601108165253050400,
                                parentId: 2,
                                name: "测试(后面删除)",
                                children: []
                            }
                        ]
                    },
                    {
                        id: 3,
                        parentId: 1,
                        name: "技术中心",
                        children: [
                            {
                                id: 5,
                                parentId: 3,
                                name: "研发中心",
                                children: []
                            },
                            {
                                id: 6,
                                parentId: 3,
                                name: "产品中心",
                                children: []
                            },
                            {
                                id: 7,
                                parentId: 3,
                                name: "测试中心",
                                children: []
                            }
                        ]
                    },
                    {
                        id: 4,
                        parentId: 1,
                        name: "运营中心",
                        children: []
                    }
                ]
            },
            {
                id: 1600321569821978600,
                parentId: 0,
                name: "测试总",
                children: [
                    {
                        id: 1600322339174772700,
                        parentId: 1600321569821978600,
                        name: "测试分部1",
                        children: [
                            {
                                id: 1600322409232232400,
                                parentId: 1600322339174772700,
                                name: "测试分部2修改一下",
                                children: []
                            }
                        ]
                    },
                    {
                        id: 1600330539424968700,
                        parentId: 1600321569821978600,
                        name: "测试部门123",
                        children: [
                            {
                                id: 1600330634228822000,
                                parentId: 1600330539424968700,
                                name: "子部门",
                                children: []
                            }
                        ]
                    }
                ]
            },
            {
                id: 1600321707797803000,
                parentId: 0,
                name: "测试总3",
                children: []
            }
        ]
    }
]
方法调用:
getNewTree(obj)

问题描述2:扁平化数据转化为树形结构

问题描述3:选中的子节点的id,获取其它父辈信息,按照要求返回一个新的树

  // 思路
    //1.先深拷贝一份data数据,用于初始循环时数据使用
    //2.将选择的id的父辈以及当先选择的checked变为true
    //3.遍历循环第2步生成的新树,获取自己想要的数据
<template>
  <div>
    1.树形结构数据处理
      1.1数据的处理
      1.2树的懒加载
    2.自定义树结构
    <div>
   <el-tree
            ref="tree"
            :data="dataCopy"
            show-checkbox
            node-key="id"
            @check="check"
            :default-expanded-keys="[2, 3]"
            :default-checked-keys="defaultCheckedkeys"
            :props="defaultProps">
    </el-tree> 
    <div>
        <el-button type="primary" @click="handle">处理</el-button>
    </div>
    </div>
  </div>
</template>

<script>
export default {
 data(){
    return{
    ids:[],
    defaultCheckedkeys:[],
    defaultProps: {
        children: 'child',
        label: 'value'
      },
     data:[],
     dataCopy:[],
     checked:false,
    }
 },
 created(){
    // 思路
    //1.先深拷贝一份data数据,用于初始循环时数据使用
    //2.将选择的id的父辈以及当先选择的checked变为true
    //3.遍历循环第2步生成的新树,获取自己想要的数据
    let data=[
    {
        id: "泸州园区",
        value: "泸州园区",
        type: 0,
        disabled: false,
        child: [
            {
                id: "0ce7d445-3d34-470f-993a-bf0ea56cf859",
                value: "矿山",
                type: 1,
                disabled: false,
                child: [
                    {
                        id: "0ce7d4453d34470f993abf0ea56cf8591",
                        value: "1",
                        type: 2,
                        disabled: false,
                        child: null
                    },
                    {
                        id: "0ce7d4453d34470f993abf0ea56cf8592",
                        value: "2",
                        type: 2,
                        disabled: false,
                        child: null
                    },
                    {
                        id: "0ce7d4453d34470f993abf0ea56cf8593",
                        value: "3",
                        type: 2,
                        disabled: false,
                        child: null
                    },
                    {
                        id: "0ce7d4453d34470f993abf0ea56cf8594",
                        value: "4",
                        type: 2,
                        disabled: false,
                        child: null
                    },
                    {
                        id: "0ce7d4453d34470f993abf0ea56cf8595",
                        value: "5",
                        type: 2,
                        disabled: false,
                        child: null
                    },
                    {
                        id: "0ce7d4453d34470f993abf0ea56cf8596",
                        value: "6",
                        type: 2,
                        disabled: false,
                        child: null
                    },
                    {
                        id: "0ce7d4453d34470f993abf0ea56cf8597",
                        value: "7",
                        type: 2,
                        disabled: false,
                        child: null
                    },
                    {
                        id: "0ce7d4453d34470f993abf0ea56cf8598",
                        value: "8",
                        type: 2,
                        disabled: false,
                        child: null
                    },
                    {
                        id: "0ce7d4453d34470f993abf0ea56cf8599",
                        value: "9",
                        type: 2,
                        disabled: false,
                        child: null
                    },
                    {
                        id: "0ce7d4453d34470f993abf0ea56cf85910",
                        value: "10",
                        type: 2,
                        disabled: false,
                        child: null
                    },
                    {
                        id: "0ce7d4453d34470f993abf0ea56cf85911",
                        value: "11",
                        type: 2,
                        disabled: false,
                        child: null
                    },
                    {
                        id: "0ce7d4453d34470f993abf0ea56cf85912",
                        value: "12",
                        type: 2,
                        disabled: false,
                        child: null
                    },
                    {
                        id: "0ce7d4453d34470f993abf0ea56cf85913",
                        value: "13",
                        type: 2,
                        disabled: false,
                        child: null
                    },
                    {
                        id: "0ce7d4453d34470f993abf0ea56cf85914",
                        value: "14",
                        type: 2,
                        disabled: false,
                        child: null
                    },
                    {
                        id: "0ce7d4453d34470f993abf0ea56cf85915",
                        value: "15",
                        type: 2,
                        disabled: false,
                        child: null
                    },
                    {
                        id: "0ce7d4453d34470f993abf0ea56cf85916",
                        value: "16",
                        type: 2,
                        disabled: false,
                        child: null
                    },
                    {
                        id: "0ce7d4453d34470f993abf0ea56cf85917",
                        value: "17",
                        type: 2,
                        disabled: false,
                        child: null
                    },
                    {
                        id: "0ce7d4453d34470f993abf0ea56cf85918",
                        value: "18",
                        type: 2,
                        disabled: false,
                        child: null
                    },
                    {
                        id: "0ce7d4453d34470f993abf0ea56cf85919",
                        value: "19",
                        type: 2,
                        disabled: false,
                        child: null
                    },
                    {
                        id: "0ce7d4453d34470f993abf0ea56cf85920",
                        value: "20",
                        type: 2,
                        disabled: false,
                        child: null
                    },
                    {
                        id: "0ce7d4453d34470f993abf0ea56cf85921",
                        value: "21",
                        type: 2,
                        disabled: false,
                        child: null
                    },
                    {
                        id: "0ce7d4453d34470f993abf0ea56cf85922",
                        value: "22",
                        type: 2,
                        disabled: false,
                        child: null
                    },
                    {
                        id: "0ce7d4453d34470f993abf0ea56cf85923",
                        value: "23",
                        type: 2,
                        disabled: false,
                        child: null
                    },
                    {
                        id: "0ce7d4453d34470f993abf0ea56cf85924",
                        value: "24",
                        type: 2,
                        disabled: false,
                        child: null
                    },
                    {
                        id: "0ce7d4453d34470f993abf0ea56cf85925",
                        value: "25",
                        type: 2,
                        disabled: false,
                        child: null
                    },
                    {
                        id: "0ce7d4453d34470f993abf0ea56cf85926",
                        value: "26",
                        type: 2,
                        disabled: false,
                        child: null
                    },
                    {
                        "id": "0ce7d4453d34470f993abf0ea56cf85927",
                        "value": "27",
                        "type": 2,
                        "disabled": false,
                        "child": null
                    },
                    {
                        "id": "0ce7d4453d34470f993abf0ea56cf85928",
                        "value": "28",
                        "type": 2,
                        "disabled": false,
                        "child": null
                    },
                    {
                        "id": "0ce7d4453d34470f993abf0ea56cf85929",
                        "value": "29",
                        "type": 2,
                        "disabled": false,
                        "child": null
                    },
                    {
                        "id": "0ce7d4453d34470f993abf0ea56cf85930",
                        "value": "30",
                        "type": 2,
                        "disabled": false,
                        "child": null
                    },
                    {
                        "id": "0ce7d4453d34470f993abf0ea56cf85931",
                        "value": "31",
                        "type": 2,
                        "disabled": false,
                        "child": null
                    },
                    {
                        "id": "0ce7d4453d34470f993abf0ea56cf85932",
                        "value": "32",
                        "type": 2,
                        "disabled": false,
                        "child": null
                    },
                    {
                        "id": "0ce7d4453d34470f993abf0ea56cf85933",
                        "value": "33",
                        "type": 2,
                        "disabled": false,
                        "child": null
                    },
                    {
                        "id": "0ce7d4453d34470f993abf0ea56cf85934",
                        "value": "34",
                        "type": 2,
                        "disabled": false,
                        "child": null
                    },
                    {
                        "id": "0ce7d4453d34470f993abf0ea56cf85935",
                        "value": "35",
                        "type": 2,
                        "disabled": false,
                        "child": null
                    },
                    {
                        "id": "0ce7d4453d34470f993abf0ea56cf85936",
                        "value": "36",
                        "type": 2,
                        "disabled": false,
                        "child": null
                    },
                    {
                        "id": "0ce7d4453d34470f993abf0ea56cf85937",
                        "value": "37",
                        "type": 2,
                        "disabled": false,
                        "child": null
                    },
                    {
                        "id": "0ce7d4453d34470f993abf0ea56cf85938",
                        "value": "38",
                        "type": 2,
                        "disabled": false,
                        "child": null
                    },
                    {
                        "id": "0ce7d4453d34470f993abf0ea56cf85939",
                        "value": "39",
                        "type": 2,
                        "disabled": false,
                        "child": null
                    },
                    {
                        "id": "0ce7d4453d34470f993abf0ea56cf85940",
                        "value": "40",
                        "type": 2,
                        "disabled": false,
                        "child": null
                    },
                    {
                        "id": "0ce7d4453d34470f993abf0ea56cf85941",
                        "value": "41",
                        "type": 2,
                        "disabled": false,
                        "child": null
                    },
                    {
                        "id": "0ce7d4453d34470f993abf0ea56cf85942",
                        "value": "42",
                        "type": 2,
                        "disabled": false,
                        "child": null
                    },
                    {
                        "id": "0ce7d4453d34470f993abf0ea56cf85943",
                        "value": "43",
                        "type": 2,
                        "disabled": false,
                        "child": null
                    }
                ]
            }
        ]
    },
    {
        "id": "南京园区",
        "value": "南京园区",
        "type": 0,
        "disabled": false,
        "child": [
            {
                "id": "5096dbc5-27ba-4b58-8401-8f37b9660a3e",
                "value": "新城总部大厦B座",
                "type": 1,
                "disabled": false,
                "child": [
                    {
                        "id": "5096dbc527ba4b5884018f37b9660a3e1",
                        "value": "1",
                        "type": 2,
                        "disabled": false,
                        "child": null
                    },
                    {
                        "id": "5096dbc527ba4b5884018f37b9660a3e2",
                        "value": "2",
                        "type": 2,
                        "disabled": false,
                        "child": null
                    },
                    {
                        "id": "5096dbc527ba4b5884018f37b9660a3e3",
                        "value": "3",
                        "type": 2,
                        "disabled": false,
                        "child": null
                    },
                    {
                        "id": "5096dbc527ba4b5884018f37b9660a3e4",
                        "value": "4",
                        "type": 2,
                        "disabled": false,
                        "child": null
                    },
                    {
                        "id": "5096dbc527ba4b5884018f37b9660a3e5",
                        "value": "5",
                        "type": 2,
                        "disabled": false,
                        "child": null
                    },
                    {
                        "id": "5096dbc527ba4b5884018f37b9660a3e6",
                        "value": "6",
                        "type": 2,
                        "disabled": false,
                        "child": null
                    },
                    {
                        "id": "5096dbc527ba4b5884018f37b9660a3e7",
                        "value": "7",
                        "type": 2,
                        "disabled": false,
                        "child": null
                    }
                ]
            },
            {
                "id": "68d91578-e6ca-4be5-ada0-7b52fedebe34",
                "value": "1办公楼",
                "type": 1,
                "disabled": false,
                "child": [
                    {
                        "id": "68d91578e6ca4be5ada07b52fedebe344",
                        "value": "4",
                        "type": 2,
                        "disabled": false,
                        "child": null
                    },
                    {
                        "id": "68d91578e6ca4be5ada07b52fedebe345",
                        "value": "5",
                        "type": 2,
                        "disabled": false,
                        "child": null
                    },
                    {
                        "id": "68d91578e6ca4be5ada07b52fedebe346",
                        "value": "6",
                        "type": 2,
                        "disabled": false,
                        "child": null
                    }
                ]
            }
        ]
    },
    {
        "id": "成都园区",
        "value": "成都园区",
        "type": 0,
        "disabled": false,
        "child": [
            {
                "id": "741296d2-ab82-4f94-b000-e0d7471a1166",
                "value": "春熙路23号办公楼",
                "type": 1,
                "disabled": false,
                "child": [
                    {
                        "id": "741296d2ab824f94b000e0d7471a11661",
                        "value": "1",
                        "type": 2,
                        "disabled": false,
                        "child": null
                    },
                    {
                        "id": "741296d2ab824f94b000e0d7471a11662",
                        "value": "2",
                        "type": 2,
                        "disabled": false,
                        "child": null
                    },
                    {
                        "id": "741296d2ab824f94b000e0d7471a11663",
                        "value": "3",
                        "type": 2,
                        "disabled": false,
                        "child": null
                    },
                    {
                        "id": "741296d2ab824f94b000e0d7471a11664",
                        "value": "4",
                        "type": 2,
                        "disabled": false,
                        "child": null
                    },
                    {
                        "id": "741296d2ab824f94b000e0d7471a11665",
                        "value": "5",
                        "type": 2,
                        "disabled": false,
                        "child": null
                    },
                    {
                        "id": "741296d2ab824f94b000e0d7471a11666",
                        "value": "6",
                        "type": 2,
                        "disabled": false,
                        "child": null
                    },
                    {
                        "id": "741296d2ab824f94b000e0d7471a11667",
                        "value": "7",
                        "type": 2,
                        "disabled": false,
                        "child": null
                    },
                    {
                        "id": "741296d2ab824f94b000e0d7471a11668",
                        "value": "8",
                        "type": 2,
                        "disabled": false,
                        "child": null
                    },
                    {
                        "id": "741296d2ab824f94b000e0d7471a11669",
                        "value": "9",
                        "type": 2,
                        "disabled": false,
                        "child": null
                    },
                    {
                        "id": "741296d2ab824f94b000e0d7471a116610",
                        "value": "10",
                        "type": 2,
                        "disabled": false,
                        "child": null
                    },
                    {
                        "id": "741296d2ab824f94b000e0d7471a116611",
                        "value": "11",
                        "type": 2,
                        "disabled": false,
                        "child": null
                    },
                    {
                        "id": "741296d2ab824f94b000e0d7471a116612",
                        "value": "12",
                        "type": 2,
                        "disabled": false,
                        "child": null
                    },
                    {
                        "id": "741296d2ab824f94b000e0d7471a116613",
                        "value": "13",
                        "type": 2,
                        "disabled": false,
                        "child": null
                    },
                    {
                        "id": "741296d2ab824f94b000e0d7471a116614",
                        "value": "14",
                        "type": 2,
                        "disabled": false,
                        "child": null
                    },
                    {
                        "id": "741296d2ab824f94b000e0d7471a116615",
                        "value": "15",
                        "type": 2,
                        "disabled": false,
                        "child": null
                    },
                    {
                        "id": "741296d2ab824f94b000e0d7471a116616",
                        "value": "16",
                        "type": 2,
                        "disabled": false,
                        "child": null
                    },
                    {
                        "id": "741296d2ab824f94b000e0d7471a116617",
                        "value": "17",
                        "type": 2,
                        "disabled": false,
                        "child": null
                    },
                    {
                        "id": "741296d2ab824f94b000e0d7471a116618",
                        "value": "18",
                        "type": 2,
                        "disabled": false,
                        "child": null
                    },
                    {
                        "id": "741296d2ab824f94b000e0d7471a116619",
                        "value": "19",
                        "type": 2,
                        "disabled": false,
                        "child": null
                    },
                    {
                        "id": "741296d2ab824f94b000e0d7471a116620",
                        "value": "20",
                        "type": 2,
                        "disabled": false,
                        "child": null
                    },
                    {
                        "id": "741296d2ab824f94b000e0d7471a116621",
                        "value": "21",
                        "type": 2,
                        "disabled": false,
                        "child": null
                    },
                    {
                        "id": "741296d2ab824f94b000e0d7471a116622",
                        "value": "22",
                        "type": 2,
                        "disabled": false,
                        "child": null
                    },
                    {
                        "id": "741296d2ab824f94b000e0d7471a116623",
                        "value": "23",
                        "type": 2,
                        "disabled": false,
                        "child": null
                    }
                ]
            }
        ]
    },
    {
        id: "青山园区",
        value: "青山园区",
        type: 0,
        disabled: false,
        child: [
            {
                id: "bc5104fa-02b0-483e-96a7-06dab2cd0046",
                value: "原料仓库",
                type: 1,
                disabled: false,
                child: [
                    {
                        id: "bc5104fa02b0483e96a706dab2cd00461",
                        value: "1",
                        type: 2,
                        disabled: false,
                        child: null
                    },
                    {
                        id: "bc5104fa02b0483e96a706dab2cd00462",
                        value: "2",
                        type: 2,
                        disabled: false,
                        child: null
                    }
                ]
            }
        ]
    }
    ]
    this.dataCopy=JSON.parse(JSON.stringify(data))
 },
 methods:{
    check(data, selectObj){
        // ids为选中的子元素的id的集合
       this.ids = this.$refs.tree.getCheckedKeys(true)
       console.log('ids',this.ids);
       //重新赋值原始值,进行数据处理
       this.data= JSON.parse(JSON.stringify(this.dataCopy))
       let result=[]
       this.ids.map(item=>{
        this.findParent(this.data,item,result)
       })
       console.log('data',result);
     },
    // 将选择的id的父辈以及当先选择的checked变为true
    findParent(data, target, result) {
      for (let i in data) {
        let item = data[i]
        if (item.id === target) {
            item.checked=true
            // result.unshift(item.value)
            return true
           }
        if (item.child && item.child.length > 0) {
          let ok = this.findParent(item.child, target, result)
          if (ok) {
            item.checked=true
            // result.unshift(item.value)
            return true
          }
        }
      }
      //走到这说明没找到目标
      return false
    },
    //打印出来的data为最终的想要的结果
    handle(){
      let data=[]
      this.getTreeList(this.data,data) 
      console.log('data',data);
    },

    // 获取自己想要的数据
      getTreeList(treeList,newTreeList) {
        treeList.map(c=>{
            if(c.checked){     
          let tempData={
            targetId:c.id,
            type:c.disabled
          }
          if(c.child && c.child.length>0){
            tempData.children=[]
            this.getTreeList(c.child,tempData.children)
          }
          newTreeList.push(tempData)
          }
        })
        console.log('newTreeList',newTreeList);
      }
   }
}
</script>

<style>

</style>

主要代码:文章来源地址https://www.toymoban.com/news/detail-537902.html

 // 将选择的id的父辈以及当先选择的checked变为true
    findParent(data, target, result) {
      for (let i in data) {
        let item = data[i]
        if (item.id === target) {
            item.checked=true
            // result.unshift(item.value)
            return true
           }
        if (item.child && item.child.length > 0) {
          let ok = this.findParent(item.child, target, result)
          if (ok) {
            item.checked=true
            // result.unshift(item.value)
            return true
          }
        }
      }
      //走到这说明没找到目标
      return false
    },
    // 获取自己想要的数据
      getTreeList(treeList,newTreeList) {
        treeList.map(c=>{
            if(c.checked){     
          let tempData={
            targetId:c.id,
            type:c.disabled
          }
          if(c.child && c.child.length>0){
            tempData.children=[]
            this.getTreeList(c.child,tempData.children)
          }
          newTreeList.push(tempData)
          }
        })
        console.log('newTreeList',newTreeList);
      }

到了这里,关于递归遍历树结构数据(js,vue)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 数据结构与算法----详解二叉树的遍历(迭代、递归)

    ❤️ 作者简介 :大家好我是小鱼干儿♛是一个热爱编程、热爱算法的大三学生,蓝桥杯国赛二等奖获得者 🐟 个人主页 :https://blog.csdn.net/qq_52007481 ⭐ 个人社区 :【小鱼干爱编程】 🔥 算法专栏 :算法竞赛进阶指南 💯 刷题网站 :虽然市面上有很多的刷题网站,但是里面

    2024年01月24日
    浏览(54)
  • vue递归函数|树形结构或者权限使用

    👉vue获取到树形结构后递归遍历数据,生成树形结构数据,无限级_vue遍历树形数据_常威在打来福~的博客-CSDN博客 需求是:三级联动数据,获取到的数据也是树形结构的,需要不停的往下循环,但是又不确定是几层,那么这样需要用到递归方法。 代码实现:

    2024年02月06日
    浏览(37)
  • 【算法与数据结构】二叉树的三种遍历代码实现(下)—— 非递归方式实现(大量图解)

     上篇: 【算法与数据结构】二叉树的三种遍历代码实现(上)—— 用递归序知识点讲解_Hacynn的博客-CSDN博客 https://blog.csdn.net/zzzzzhxxx/article/details/133609612?spm=1001.2014.3001.5502 目录 前言 1、先序遍历 1.1、详细图解描述 1.2、先序遍历非递归代码实现  2、中序遍历 2.1、详细图解描

    2024年02月08日
    浏览(38)
  • 数据结构与算法学习:二叉树的后序遍历的递归与非递归实现,以及非递归实现中的流程控制的说明。

    需求二叉树: 采用二叉树后序遍历非递归算法。设置一个指针p初始指向树根,p先入栈,而后使得p指向它的左孩子p-firstchild,重复操作,使得每个左孩子都依次入栈,同时初始化一个Treenode*类型的指针 pre,这个指针是后序前驱,这个后序前驱用以区分为已访问过的结点和未

    2023年04月22日
    浏览(48)
  • 【算法与数据结构】二叉树的三种遍历代码实现(上)—— 用递归序知识点讲解

      本篇博客 (上篇) 先带大家学习 递归方式 进行三种遍历, 而在后续的 (下篇) 中将为大家详细讲解非递归的三种遍历方式。 目录 1、二叉树 2、二叉树的递归遍历 2.1、先序遍历 2.2、中序遍历 2.3、后序遍历  二叉树(Binary tree)是树形结构的一个重要类型。许多实际问

    2024年02月08日
    浏览(44)
  • 【数据结构】二叉树(遍历,递归)

     🌈个人主页: 秦jh__https://blog.csdn.net/qinjh_?spm=1010.2135.3001.5343 🔥 系列专栏: 《数据结构》https://blog.csdn.net/qinjh_/category_12536791.html?spm=1001.2014.3001.5482 ​​​ 目录 二叉树遍历规则 前序遍历 ​ 中序遍历  后序遍历 递归结构遍历 前序 中序  求节点个数 求叶子节点个数  求树

    2024年01月19日
    浏览(41)
  • 【数据结构|二叉树遍历】递归与非递归实现前序遍历、中序遍历、后序遍历

    递归与非递归实现二叉树的前序遍历、中序遍历、后序遍历。 二叉树图 定义 前序遍历(Preorder Traversal): 前序遍历的顺序是先访问根节点,然后按照先左后右的顺序访问子节点。对于上面的二叉树,前序遍历的结果是:4 - 2 - 1 - 3 - 6 - 5 - 7。 中序遍历(Inorder Traversal): 中

    2024年02月14日
    浏览(44)
  • 探索树形数据结构,通识树、森林与二叉树的基础知识(专有名词),进一步利用顺序表和链表表示、遍历和线索树形结构

      结点之间有分支,具有层次关系 树的定义 : 树 (tree)是n(n≥0)个有限集。 若n = 0,则称为空树; 若n 0,则它满足如下两个条件: 有且仅有一个特定的称为根(Root)的结点; 其余结点可分为m(m≥0)个互不相交的有限集T1,T2,T3,.....,Tm,其中每一个集合本身又是一棵树,并称为根的

    2024年02月01日
    浏览(53)
  • 【Java数据结构】二叉树的前中后序遍历(递归和非递归)

    二叉树遍历是二叉树的一种重要操作 必须要掌握 二叉树的遍历可以用递归和非递归两种做法来实现 前序遍历的遍历方式是 先根节点 在左节点 在右节点 述这棵树前序遍历的结果是: A B D E C F G 递归的思想就是把问题拆分成一个个小问题来解决 treeNode是一个内部类 具体实现

    2023年04月26日
    浏览(52)
  • Java 数据结构篇-二叉树的深度优先遍历(实现:递归方式、非递归方式)

    🔥博客主页: 【 小扳_-CSDN博客】 ❤感谢大家点赞👍收藏⭐评论✍    文章目录         1.0 二叉树的说明         1.1 二叉树的实现         2.0 二叉树的优先遍历说明         3.0 用递归方式实现二叉树遍历         3.1 用递归方式实现遍历 - 前序遍历         3.2 用递归

    2024年02月05日
    浏览(52)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包