static void Main(string[] args) { string[] paths = new string[] { "ROOT!ZZZ!AAA!EEE!15712", "ROOT!ZZZ!AAA!EEE!15722", "ROOT!ZZZ!AAA!EEE!13891" }; List <List <string> > inputData = paths.Select(x => x.Split(new char[] { '!' }).ToList()).ToList(); Node root = new Node(); Node.ParseTree(root, inputData); }