C# 遞歸省市區三級樹結構

省市區結構git

 

實體算法

/// <summary>
    /// 行政區
    /// </summary>
    public class AreaEntity
    {
        public int Id { get; set; }
        /// <summary>
        /// 名稱
        /// </summary>
        public string RegionName { get; set; }

        /// <summary>
        /// 編碼
        /// </summary>
        public string RegionCode { get; set; }

        /// <summary>
        /// 上級編碼
        /// </summary>
        public string ParentCode { get; set; }

        public string Longitude { get; set; }
        public string Latitude { get; set; }

    }

    public class AreaModel
    {
        /// <summary>
        /// 名稱
        /// </summary>
        public string RegionName { get; set; }

        /// <summary>
        /// 編碼
        /// </summary>
        public string RegionCode { get; set; }

        /// <summary>
        /// 上級編碼
        /// </summary>
        public string ParentCode { get; set; }

        public AreaModel[] Children { get; set; }

    }

 C# 代碼ui

        /// <summary>
        /// 獲取所屬獲取信息
        /// </summary>
        /// <param name="parentCode">所屬編碼</param>
        /// <returns>列表</returns>
        public AreaEntity[] GetAreaModelList(string parentCode)
        {

            StringBuilder strSQL = new StringBuilder();
            strSQL.Append(" select * from [dbo].[Area] With(nolock) ");
            strSQL.Append(" WHERE  ParentCode=@ParentCode");

            var param = new SqlParameter[] {
                new SqlParameter("@ParentCode",SqlDbType.VarChar)
            };
            param[0].Value = parentCode;

            AreaEntity[] list = null;
            using (var context = new YTODBDbContext())
            {
                list = context.Database.SqlQuery<AreaEntity>(strSQL.ToString(), param).ToArray();

            }
            return list;



        }
        /// <summary>
        /// 生成樹的方法
        /// </summary>
        /// <param name="parentCode">所屬編碼</param>
        /// <param name="areaModel">信息</param>
        /// <returns></returns>
        public AreaModel creatTheTree(string parentCode, AreaModel areaModel)
        {
            AreaEntity[] items = GetAreaModelList(parentCode);
            //若是沒有字節點了,那就返回空
            if (items.Length == 0)
                return null;
            List<AreaModel> jdList = new List<AreaModel>();
            for (int i = 0; i < items.Length; i++)
            {
                AreaModel jiedian = new AreaModel();
                jiedian.RegionName = items[i].RegionName;
                jiedian.RegionCode = items[i].RegionCode;
                jiedian.ParentCode = items[i].ParentCode;
                //遞歸循環
                creatTheTree(items[i].RegionCode.ToString(), jiedian);
                jdList.Add(jiedian);
            }
            areaModel.Children = jdList.ToArray();
            return areaModel;
        }

  接口調用編碼

        public HttpResponseMessage getAreaInfo(AreaInfoViewModel req)
        {
            //var userinfo = GetCurrentLoginInfo();
            //if (userinfo.RoleId != FlagMgr.UnitRole.Type.Agricultural.ToInt())
            //{
            //    return ResponseError("權限不匹配!");
            //}

            var AreaModel = _areaService.GetAreaModelList(req.RegionCode);
            var tempAreaModel = new AreaModel();
            tempAreaModel.RegionName = AreaModel[0].RegionName;
            tempAreaModel.RegionCode = AreaModel[0].RegionCode;
            tempAreaModel.ParentCode = AreaModel[0].ParentCode;
            //遞歸樹結構
            var areaModel = _areaService.creatTheTree(req.RegionCode, tempAreaModel);
            return ResponseOK<AreaModel>(areaModel);
        }

  返回數據spa

{
    "mStatusCode": 200,
    "mStatusDesc": "OK",
    "mDataBody": {
        "RegionName": "濟南市",
        "RegionCode": "370100",
        "ParentCode": "370000",
        "Children": [
            {
                "RegionName": "濟南市",
                "RegionCode": "370100",
                "ParentCode": "370000",
                "Children": [
                    {
                        "RegionName": "市轄區",
                        "RegionCode": "370101",
                        "ParentCode": "370100",
                        "Children": null
                    },
                    {
                        "RegionName": "歷下區",
                        "RegionCode": "370102",
                        "ParentCode": "370100",
                        "Children": null
                    },
                    {
                        "RegionName": "市中區",
                        "RegionCode": "370103",
                        "ParentCode": "370100",
                        "Children": null
                    },
                    {
                        "RegionName": "槐蔭區",
                        "RegionCode": "370104",
                        "ParentCode": "370100",
                        "Children": null
                    },
                    {
                        "RegionName": "天橋區",
                        "RegionCode": "370105",
                        "ParentCode": "370100",
                        "Children": null
                    },
                    {
                        "RegionName": "歷城區",
                        "RegionCode": "370112",
                        "ParentCode": "370100",
                        "Children": null
                    },
                    {
                        "RegionName": "長清區",
                        "RegionCode": "370113",
                        "ParentCode": "370100",
                        "Children": null
                    },
                    {
                        "RegionName": "平陰縣",
                        "RegionCode": "370124",
                        "ParentCode": "370100",
                        "Children": null
                    },
                    {
                        "RegionName": "濟陽縣",
                        "RegionCode": "370125",
                        "ParentCode": "370100",
                        "Children": null
                    },
                    {
                        "RegionName": "商河縣",
                        "RegionCode": "370126",
                        "ParentCode": "370100",
                        "Children": null
                    },
                    {
                        "RegionName": "章丘市",
                        "RegionCode": "370181",
                        "ParentCode": "370100",
                        "Children": null
                    }
                ]
            },
            {
                "RegionName": "青島市",
                "RegionCode": "370200",
                "ParentCode": "370000",
                "Children": [
                    {
                        "RegionName": "市轄區",
                        "RegionCode": "370201",
                        "ParentCode": "370200",
                        "Children": null
                    },
                    {
                        "RegionName": "市南區",
                        "RegionCode": "370202",
                        "ParentCode": "370200",
                        "Children": null
                    },
                    {
                        "RegionName": "市北區",
                        "RegionCode": "370203",
                        "ParentCode": "370200",
                        "Children": null
                    },
                    {
                        "RegionName": "黃島區",
                        "RegionCode": "370211",
                        "ParentCode": "370200",
                        "Children": null
                    },
                    {
                        "RegionName": "嶗山區",
                        "RegionCode": "370212",
                        "ParentCode": "370200",
                        "Children": null
                    },
                    {
                        "RegionName": "李滄區",
                        "RegionCode": "370213",
                        "ParentCode": "370200",
                        "Children": null
                    },
                    {
                        "RegionName": "城陽區",
                        "RegionCode": "370214",
                        "ParentCode": "370200",
                        "Children": null
                    },
                    {
                        "RegionName": "膠州市",
                        "RegionCode": "370281",
                        "ParentCode": "370200",
                        "Children": null
                    },
                    {
                        "RegionName": "即墨市",
                        "RegionCode": "370282",
                        "ParentCode": "370200",
                        "Children": null
                    },
                    {
                        "RegionName": "平度市",
                        "RegionCode": "370283",
                        "ParentCode": "370200",
                        "Children": null
                    },
                    {
                        "RegionName": "萊西市",
                        "RegionCode": "370285",
                        "ParentCode": "370200",
                        "Children": null
                    }
                ]
            },
            {
                "RegionName": "淄博市",
                "RegionCode": "370300",
                "ParentCode": "370000",
                "Children": [
                    {
                        "RegionName": "市轄區",
                        "RegionCode": "370301",
                        "ParentCode": "370300",
                        "Children": null
                    },
                    {
                        "RegionName": "淄川區",
                        "RegionCode": "370302",
                        "ParentCode": "370300",
                        "Children": null
                    },
                    {
                        "RegionName": "張店區",
                        "RegionCode": "370303",
                        "ParentCode": "370300",
                        "Children": null
                    },
                    {
                        "RegionName": "博山區",
                        "RegionCode": "370304",
                        "ParentCode": "370300",
                        "Children": null
                    },
                    {
                        "RegionName": "臨淄區",
                        "RegionCode": "370305",
                        "ParentCode": "370300",
                        "Children": null
                    },
                    {
                        "RegionName": "周村區",
                        "RegionCode": "370306",
                        "ParentCode": "370300",
                        "Children": null
                    },
                    {
                        "RegionName": "桓臺縣",
                        "RegionCode": "370321",
                        "ParentCode": "370300",
                        "Children": null
                    },
                    {
                        "RegionName": "高青縣",
                        "RegionCode": "370322",
                        "ParentCode": "370300",
                        "Children": null
                    },
                    {
                        "RegionName": "沂源縣",
                        "RegionCode": "370323",
                        "ParentCode": "370300",
                        "Children": null
                    }
                ]
            },
            {
                "RegionName": "棗莊市",
                "RegionCode": "370400",
                "ParentCode": "370000",
                "Children": [
                    {
                        "RegionName": "市轄區",
                        "RegionCode": "370401",
                        "ParentCode": "370400",
                        "Children": null
                    },
                    {
                        "RegionName": "市中區",
                        "RegionCode": "370402",
                        "ParentCode": "370400",
                        "Children": null
                    },
                    {
                        "RegionName": "薛城區",
                        "RegionCode": "370403",
                        "ParentCode": "370400",
                        "Children": null
                    },
                    {
                        "RegionName": "嶧城區",
                        "RegionCode": "370404",
                        "ParentCode": "370400",
                        "Children": null
                    },
                    {
                        "RegionName": "臺兒莊區",
                        "RegionCode": "370405",
                        "ParentCode": "370400",
                        "Children": null
                    },
                    {
                        "RegionName": "山亭區",
                        "RegionCode": "370406",
                        "ParentCode": "370400",
                        "Children": null
                    },
                    {
                        "RegionName": "滕州市",
                        "RegionCode": "370481",
                        "ParentCode": "370400",
                        "Children": null
                    }
                ]
            },
            {
                "RegionName": "東營市",
                "RegionCode": "370500",
                "ParentCode": "370000",
                "Children": [
                    {
                        "RegionName": "市轄區",
                        "RegionCode": "370501",
                        "ParentCode": "370500",
                        "Children": null
                    },
                    {
                        "RegionName": "東營區",
                        "RegionCode": "370502",
                        "ParentCode": "370500",
                        "Children": null
                    },
                    {
                        "RegionName": "河口區",
                        "RegionCode": "370503",
                        "ParentCode": "370500",
                        "Children": null
                    },
                    {
                        "RegionName": "墾利縣",
                        "RegionCode": "370521",
                        "ParentCode": "370500",
                        "Children": null
                    },
                    {
                        "RegionName": "利津縣",
                        "RegionCode": "370522",
                        "ParentCode": "370500",
                        "Children": null
                    },
                    {
                        "RegionName": "廣饒縣",
                        "RegionCode": "370523",
                        "ParentCode": "370500",
                        "Children": null
                    }
                ]
            },
            {
                "RegionName": "煙臺市",
                "RegionCode": "370600",
                "ParentCode": "370000",
                "Children": [
                    {
                        "RegionName": "市轄區",
                        "RegionCode": "370601",
                        "ParentCode": "370600",
                        "Children": null
                    },
                    {
                        "RegionName": "芝罘區",
                        "RegionCode": "370602",
                        "ParentCode": "370600",
                        "Children": null
                    },
                    {
                        "RegionName": "福山區",
                        "RegionCode": "370611",
                        "ParentCode": "370600",
                        "Children": null
                    },
                    {
                        "RegionName": "牟平區",
                        "RegionCode": "370612",
                        "ParentCode": "370600",
                        "Children": null
                    },
                    {
                        "RegionName": "萊山區",
                        "RegionCode": "370613",
                        "ParentCode": "370600",
                        "Children": null
                    },
                    {
                        "RegionName": "長島縣",
                        "RegionCode": "370634",
                        "ParentCode": "370600",
                        "Children": null
                    },
                    {
                        "RegionName": "龍口市",
                        "RegionCode": "370681",
                        "ParentCode": "370600",
                        "Children": null
                    },
                    {
                        "RegionName": "萊陽市",
                        "RegionCode": "370682",
                        "ParentCode": "370600",
                        "Children": null
                    },
                    {
                        "RegionName": "萊州市",
                        "RegionCode": "370683",
                        "ParentCode": "370600",
                        "Children": null
                    },
                    {
                        "RegionName": "蓬萊市",
                        "RegionCode": "370684",
                        "ParentCode": "370600",
                        "Children": null
                    },
                    {
                        "RegionName": "招遠市",
                        "RegionCode": "370685",
                        "ParentCode": "370600",
                        "Children": null
                    },
                    {
                        "RegionName": "棲霞市",
                        "RegionCode": "370686",
                        "ParentCode": "370600",
                        "Children": null
                    },
                    {
                        "RegionName": "海陽市",
                        "RegionCode": "370687",
                        "ParentCode": "370600",
                        "Children": null
                    }
                ]
            },
            {
                "RegionName": "濰坊市",
                "RegionCode": "370700",
                "ParentCode": "370000",
                "Children": [
                    {
                        "RegionName": "市轄區",
                        "RegionCode": "370701",
                        "ParentCode": "370700",
                        "Children": null
                    },
                    {
                        "RegionName": "濰城區",
                        "RegionCode": "370702",
                        "ParentCode": "370700",
                        "Children": null
                    },
                    {
                        "RegionName": "寒亭區",
                        "RegionCode": "370703",
                        "ParentCode": "370700",
                        "Children": null
                    },
                    {
                        "RegionName": "坊子區",
                        "RegionCode": "370704",
                        "ParentCode": "370700",
                        "Children": null
                    },
                    {
                        "RegionName": "奎文區",
                        "RegionCode": "370705",
                        "ParentCode": "370700",
                        "Children": null
                    },
                    {
                        "RegionName": "臨朐縣",
                        "RegionCode": "370724",
                        "ParentCode": "370700",
                        "Children": null
                    },
                    {
                        "RegionName": "昌樂縣",
                        "RegionCode": "370725",
                        "ParentCode": "370700",
                        "Children": null
                    },
                    {
                        "RegionName": "青州市",
                        "RegionCode": "370781",
                        "ParentCode": "370700",
                        "Children": null
                    },
                    {
                        "RegionName": "諸城市",
                        "RegionCode": "370782",
                        "ParentCode": "370700",
                        "Children": null
                    },
                    {
                        "RegionName": "壽光市",
                        "RegionCode": "370783",
                        "ParentCode": "370700",
                        "Children": null
                    },
                    {
                        "RegionName": "安丘市",
                        "RegionCode": "370784",
                        "ParentCode": "370700",
                        "Children": null
                    },
                    {
                        "RegionName": "高密市",
                        "RegionCode": "370785",
                        "ParentCode": "370700",
                        "Children": null
                    },
                    {
                        "RegionName": "昌邑市",
                        "RegionCode": "370786",
                        "ParentCode": "370700",
                        "Children": null
                    }
                ]
            },
            {
                "RegionName": "濟寧市",
                "RegionCode": "370800",
                "ParentCode": "370000",
                "Children": [
                    {
                        "RegionName": "市轄區",
                        "RegionCode": "370801",
                        "ParentCode": "370800",
                        "Children": null
                    },
                    {
                        "RegionName": "任城區",
                        "RegionCode": "370811",
                        "ParentCode": "370800",
                        "Children": null
                    },
                    {
                        "RegionName": "兗州區",
                        "RegionCode": "370812",
                        "ParentCode": "370800",
                        "Children": null
                    },
                    {
                        "RegionName": "微山縣",
                        "RegionCode": "370826",
                        "ParentCode": "370800",
                        "Children": null
                    },
                    {
                        "RegionName": "魚臺縣",
                        "RegionCode": "370827",
                        "ParentCode": "370800",
                        "Children": null
                    },
                    {
                        "RegionName": "金鄉縣",
                        "RegionCode": "370828",
                        "ParentCode": "370800",
                        "Children": null
                    },
                    {
                        "RegionName": "嘉祥縣",
                        "RegionCode": "370829",
                        "ParentCode": "370800",
                        "Children": null
                    },
                    {
                        "RegionName": "汶上縣",
                        "RegionCode": "370830",
                        "ParentCode": "370800",
                        "Children": null
                    },
                    {
                        "RegionName": "泗水縣",
                        "RegionCode": "370831",
                        "ParentCode": "370800",
                        "Children": null
                    },
                    {
                        "RegionName": "梁山縣",
                        "RegionCode": "370832",
                        "ParentCode": "370800",
                        "Children": null
                    },
                    {
                        "RegionName": "曲阜市",
                        "RegionCode": "370881",
                        "ParentCode": "370800",
                        "Children": null
                    },
                    {
                        "RegionName": "鄒城市",
                        "RegionCode": "370883",
                        "ParentCode": "370800",
                        "Children": null
                    }
                ]
            },
            {
                "RegionName": "泰安市",
                "RegionCode": "370900",
                "ParentCode": "370000",
                "Children": [
                    {
                        "RegionName": "市轄區",
                        "RegionCode": "370901",
                        "ParentCode": "370900",
                        "Children": null
                    },
                    {
                        "RegionName": "泰山區",
                        "RegionCode": "370902",
                        "ParentCode": "370900",
                        "Children": null
                    },
                    {
                        "RegionName": "岱嶽區",
                        "RegionCode": "370911",
                        "ParentCode": "370900",
                        "Children": null
                    },
                    {
                        "RegionName": "寧陽縣",
                        "RegionCode": "370921",
                        "ParentCode": "370900",
                        "Children": null
                    },
                    {
                        "RegionName": "東平縣",
                        "RegionCode": "370923",
                        "ParentCode": "370900",
                        "Children": null
                    },
                    {
                        "RegionName": "新泰市",
                        "RegionCode": "370982",
                        "ParentCode": "370900",
                        "Children": null
                    },
                    {
                        "RegionName": "肥城市",
                        "RegionCode": "370983",
                        "ParentCode": "370900",
                        "Children": null
                    }
                ]
            },
            {
                "RegionName": "威海市",
                "RegionCode": "371000",
                "ParentCode": "370000",
                "Children": [
                    {
                        "RegionName": "市轄區",
                        "RegionCode": "371001",
                        "ParentCode": "371000",
                        "Children": null
                    },
                    {
                        "RegionName": "環翠區",
                        "RegionCode": "371002",
                        "ParentCode": "371000",
                        "Children": null
                    },
                    {
                        "RegionName": "文登區",
                        "RegionCode": "371003",
                        "ParentCode": "371000",
                        "Children": null
                    },
                    {
                        "RegionName": "榮成市",
                        "RegionCode": "371082",
                        "ParentCode": "371000",
                        "Children": null
                    },
                    {
                        "RegionName": "乳山市",
                        "RegionCode": "371083",
                        "ParentCode": "371000",
                        "Children": null
                    }
                ]
            },
            {
                "RegionName": "日照市",
                "RegionCode": "371100",
                "ParentCode": "370000",
                "Children": [
                    {
                        "RegionName": "市轄區",
                        "RegionCode": "371101",
                        "ParentCode": "371100",
                        "Children": null
                    },
                    {
                        "RegionName": "東港區",
                        "RegionCode": "371102",
                        "ParentCode": "371100",
                        "Children": null
                    },
                    {
                        "RegionName": "嵐山區",
                        "RegionCode": "371103",
                        "ParentCode": "371100",
                        "Children": null
                    },
                    {
                        "RegionName": "五蓮縣",
                        "RegionCode": "371121",
                        "ParentCode": "371100",
                        "Children": null
                    },
                    {
                        "RegionName": "莒縣",
                        "RegionCode": "371122",
                        "ParentCode": "371100",
                        "Children": null
                    }
                ]
            },
            {
                "RegionName": "萊蕪市",
                "RegionCode": "371200",
                "ParentCode": "370000",
                "Children": [
                    {
                        "RegionName": "市轄區",
                        "RegionCode": "371201",
                        "ParentCode": "371200",
                        "Children": null
                    },
                    {
                        "RegionName": "萊城區",
                        "RegionCode": "371202",
                        "ParentCode": "371200",
                        "Children": null
                    },
                    {
                        "RegionName": "鋼城區",
                        "RegionCode": "371203",
                        "ParentCode": "371200",
                        "Children": null
                    }
                ]
            },
            {
                "RegionName": "臨沂市",
                "RegionCode": "371300",
                "ParentCode": "370000",
                "Children": [
                    {
                        "RegionName": "市轄區",
                        "RegionCode": "371301",
                        "ParentCode": "371300",
                        "Children": null
                    },
                    {
                        "RegionName": "蘭山區",
                        "RegionCode": "371302",
                        "ParentCode": "371300",
                        "Children": null
                    },
                    {
                        "RegionName": "羅莊區",
                        "RegionCode": "371311",
                        "ParentCode": "371300",
                        "Children": null
                    },
                    {
                        "RegionName": "河東區",
                        "RegionCode": "371312",
                        "ParentCode": "371300",
                        "Children": null
                    },
                    {
                        "RegionName": "沂南縣",
                        "RegionCode": "371321",
                        "ParentCode": "371300",
                        "Children": null
                    },
                    {
                        "RegionName": "郯城縣",
                        "RegionCode": "371322",
                        "ParentCode": "371300",
                        "Children": null
                    },
                    {
                        "RegionName": "沂水縣",
                        "RegionCode": "371323",
                        "ParentCode": "371300",
                        "Children": null
                    },
                    {
                        "RegionName": "蘭陵縣",
                        "RegionCode": "371324",
                        "ParentCode": "371300",
                        "Children": null
                    },
                    {
                        "RegionName": "費縣",
                        "RegionCode": "371325",
                        "ParentCode": "371300",
                        "Children": null
                    },
                    {
                        "RegionName": "平邑縣",
                        "RegionCode": "371326",
                        "ParentCode": "371300",
                        "Children": null
                    },
                    {
                        "RegionName": "莒南縣",
                        "RegionCode": "371327",
                        "ParentCode": "371300",
                        "Children": null
                    },
                    {
                        "RegionName": "蒙陰縣",
                        "RegionCode": "371328",
                        "ParentCode": "371300",
                        "Children": null
                    },
                    {
                        "RegionName": "臨沭縣",
                        "RegionCode": "371329",
                        "ParentCode": "371300",
                        "Children": null
                    }
                ]
            },
            {
                "RegionName": "德州市",
                "RegionCode": "371400",
                "ParentCode": "370000",
                "Children": [
                    {
                        "RegionName": "市轄區",
                        "RegionCode": "371401",
                        "ParentCode": "371400",
                        "Children": null
                    },
                    {
                        "RegionName": "德城區",
                        "RegionCode": "371402",
                        "ParentCode": "371400",
                        "Children": null
                    },
                    {
                        "RegionName": "陵城區",
                        "RegionCode": "371403",
                        "ParentCode": "371400",
                        "Children": null
                    },
                    {
                        "RegionName": "寧津縣",
                        "RegionCode": "371422",
                        "ParentCode": "371400",
                        "Children": null
                    },
                    {
                        "RegionName": "慶雲縣",
                        "RegionCode": "371423",
                        "ParentCode": "371400",
                        "Children": null
                    },
                    {
                        "RegionName": "臨邑縣",
                        "RegionCode": "371424",
                        "ParentCode": "371400",
                        "Children": null
                    },
                    {
                        "RegionName": "齊河縣",
                        "RegionCode": "371425",
                        "ParentCode": "371400",
                        "Children": null
                    },
                    {
                        "RegionName": "平原縣",
                        "RegionCode": "371426",
                        "ParentCode": "371400",
                        "Children": null
                    },
                    {
                        "RegionName": "夏津縣",
                        "RegionCode": "371427",
                        "ParentCode": "371400",
                        "Children": null
                    },
                    {
                        "RegionName": "武城縣",
                        "RegionCode": "371428",
                        "ParentCode": "371400",
                        "Children": null
                    },
                    {
                        "RegionName": "樂陵市",
                        "RegionCode": "371481",
                        "ParentCode": "371400",
                        "Children": null
                    },
                    {
                        "RegionName": "禹城市",
                        "RegionCode": "371482",
                        "ParentCode": "371400",
                        "Children": null
                    }
                ]
            },
            {
                "RegionName": "聊城市",
                "RegionCode": "371500",
                "ParentCode": "370000",
                "Children": [
                    {
                        "RegionName": "市轄區",
                        "RegionCode": "371501",
                        "ParentCode": "371500",
                        "Children": null
                    },
                    {
                        "RegionName": "東昌府區",
                        "RegionCode": "371502",
                        "ParentCode": "371500",
                        "Children": null
                    },
                    {
                        "RegionName": "陽谷縣",
                        "RegionCode": "371521",
                        "ParentCode": "371500",
                        "Children": null
                    },
                    {
                        "RegionName": "莘縣",
                        "RegionCode": "371522",
                        "ParentCode": "371500",
                        "Children": null
                    },
                    {
                        "RegionName": "茌平縣",
                        "RegionCode": "371523",
                        "ParentCode": "371500",
                        "Children": null
                    },
                    {
                        "RegionName": "東阿縣",
                        "RegionCode": "371524",
                        "ParentCode": "371500",
                        "Children": null
                    },
                    {
                        "RegionName": "冠縣",
                        "RegionCode": "371525",
                        "ParentCode": "371500",
                        "Children": null
                    },
                    {
                        "RegionName": "高唐縣",
                        "RegionCode": "371526",
                        "ParentCode": "371500",
                        "Children": null
                    },
                    {
                        "RegionName": "臨清市",
                        "RegionCode": "371581",
                        "ParentCode": "371500",
                        "Children": null
                    }
                ]
            },
            {
                "RegionName": "濱州市",
                "RegionCode": "371600",
                "ParentCode": "370000",
                "Children": [
                    {
                        "RegionName": "市轄區",
                        "RegionCode": "371601",
                        "ParentCode": "371600",
                        "Children": null
                    },
                    {
                        "RegionName": "濱城區",
                        "RegionCode": "371602",
                        "ParentCode": "371600",
                        "Children": null
                    },
                    {
                        "RegionName": "沾化區",
                        "RegionCode": "371603",
                        "ParentCode": "371600",
                        "Children": null
                    },
                    {
                        "RegionName": "惠民縣",
                        "RegionCode": "371621",
                        "ParentCode": "371600",
                        "Children": null
                    },
                    {
                        "RegionName": "陽信縣",
                        "RegionCode": "371622",
                        "ParentCode": "371600",
                        "Children": null
                    },
                    {
                        "RegionName": "無棣縣",
                        "RegionCode": "371623",
                        "ParentCode": "371600",
                        "Children": null
                    },
                    {
                        "RegionName": "博興縣",
                        "RegionCode": "371625",
                        "ParentCode": "371600",
                        "Children": null
                    },
                    {
                        "RegionName": "鄒平縣",
                        "RegionCode": "371626",
                        "ParentCode": "371600",
                        "Children": null
                    }
                ]
            },
            {
                "RegionName": "菏澤市",
                "RegionCode": "371700",
                "ParentCode": "370000",
                "Children": [
                    {
                        "RegionName": "市轄區",
                        "RegionCode": "371701",
                        "ParentCode": "371700",
                        "Children": null
                    },
                    {
                        "RegionName": "牡丹區",
                        "RegionCode": "371702",
                        "ParentCode": "371700",
                        "Children": null
                    },
                    {
                        "RegionName": "曹縣",
                        "RegionCode": "371721",
                        "ParentCode": "371700",
                        "Children": null
                    },
                    {
                        "RegionName": "單縣",
                        "RegionCode": "371722",
                        "ParentCode": "371700",
                        "Children": null
                    },
                    {
                        "RegionName": "成武縣",
                        "RegionCode": "371723",
                        "ParentCode": "371700",
                        "Children": null
                    },
                    {
                        "RegionName": "鉅野縣",
                        "RegionCode": "371724",
                        "ParentCode": "371700",
                        "Children": null
                    },
                    {
                        "RegionName": "鄆城縣",
                        "RegionCode": "371725",
                        "ParentCode": "371700",
                        "Children": null
                    },
                    {
                        "RegionName": "鄄城縣",
                        "RegionCode": "371726",
                        "ParentCode": "371700",
                        "Children": null
                    },
                    {
                        "RegionName": "定陶縣",
                        "RegionCode": "371727",
                        "ParentCode": "371700",
                        "Children": null
                    },
                    {
                        "RegionName": "東明縣",
                        "RegionCode": "371728",
                        "ParentCode": "371700",
                        "Children": null
                    }
                ]
            }
        ]
    }
}

  

使用過多的遞歸出現錯誤,「System.StackOverflowException」,因爲遞歸數據放在棧裏,遞歸不斷的壓棧,.NET framework Runtime 就拋出異常。blog

 遞歸算法解題的運行效率較低。在遞歸調用的過程中系統爲每一層的返回點、局部量等開闢了棧來存儲。遞歸次數過多容易形成棧溢出等。遞歸

相關文章
相關標籤/搜索