以前寫**for迴圈寫的多,遞迴除了在大學學習以外,真沒怎麼用過!
最近專案中使用到了關於族譜排列的問題,就是怎麼把資料庫裡的多個子父類people物件,在介面中用樹的結構展示出來
假設資料庫中people有兩個字段分別是id和parentid(當然設計的時候肯定會有familypath,rootid之類的字段,這裡為了方便介紹就只用倆字段)
話不多說直接上**吧
using//thensystem;
using
system.collections.generic;
using
system.linq;
using
system.text;
using
system.threading.tasks;
namespace
); }
for (int i = 0; i < 2; i++));}
for (int i = 0; i < 3; i++));}
for (int i = 0; i < 3; i++));}
#endregion 上面是新增測試資料
//查詢當前節點下的所有子孫物件
var currentp = new
people();
currentp.id = 1
;//遞迴完成後,此處currentp,就新增好了子孫類節點
recursion(listp, currentp);
//展示currentp
}public
void recursion(listlist,people p)
list
peoples = new list();
for (int i = 0; i < list.count; i++)
} }}
public
class
people
}
吶,就這麼簡單,看到同事不斷用for迴圈來一級推一級,我頭都大了,寫的太麻煩。遞迴雖然很簡單,但是也要花點時間思考。
Mysql中的遞迴層次查詢(父子查詢)
在mysql中如何完成節點下的所有節點或節點上的所有父節點的查詢?在oracle中我們知道有乙個hierarchical queries可以通過connect by來查詢,但是,在mysql中還沒有對應的函式 下面是sql指令碼,想要執行的直接賦值貼上進資料庫即可。建立表treenodes 可以根據...
Mysql中的遞迴層次查詢(父子查詢)
描述 最近遇到了乙個問題,在mysql中如何完成節點下的所有節點或節點上的所有父節點的查詢?在oracle中我們知道有乙個hierarchical queries可以通過connect by來查詢,但是,在mysql中還沒有對應的函式 下面給出乙個function來完成的方法 下面是sql指令碼,想...
python如何把字串型別list轉換成list
python讀取了乙個list是字串形式的 11.23,23.34 想轉換成list類程式設計客棧型 方式一 import ast str list 11.23,23.34 list li程式設計客棧st ast.literal eval str list print type list list ...