두 갈래 나무 생성
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Collections.Generic;
namespace ConsoleApplication4
{
class Program
{
static void Main(string[] args)
{
personalInfo p1 = new personalInfo("1", "1");
personalInfo p2 = new personalInfo("2", "2");
personalInfo p3 = new personalInfo("3", "3");
personalInfo p4 = new personalInfo("", "");
personalInfo p31 = new personalInfo("31", "31");
personalInfo p32 = new personalInfo("32", "32");
personalInfo p33 = new personalInfo("", "");
personalInfo p321 = new personalInfo("", "");
personalInfo p311 = new personalInfo("", "");
personalInfo p21 = new personalInfo("", "");
personalInfo p11 = new personalInfo("11", "11");
personalInfo p12 = new personalInfo("", "");
personalInfo p111 = new personalInfo("", "");
List<personalInfo> list = new System.Collections.Generic.List<personalInfo>();
list.AddRange(new personalInfo[]{p1,p2,p3,p4,p31,p32,p33,p321,p311,p21,p11,p12,p111});
JiaPu j = new JiaPu(list);
note phead = null;
int index = j.CreateTree(ref phead, 0, 13);
}
public struct personalInfo
{
public personalInfo(string name, string Id)
{
this.name = name;
this.Id = Id;
}
public string name;
public string Id; // Id is empty or null, that means, no the person.
}
public class note
{
public personalInfo data;
public note lChild, rChild;
}
public class JiaPu
{
List<personalInfo> persons;
// int index = 0;
public JiaPu(List<personalInfo> persons)
{
this.persons = persons;
}
public int CreateTree(ref note nNode,int index, int length)
{
if(index>=length)
{
nNode= null;
return index;
}
if (string.IsNullOrEmpty(persons[index].Id))
{
nNode = null;
return index;
}
nNode = new note();
nNode.data = persons[index];
index = CreateTree(ref nNode.lChild, ++index, length);
index = CreateTree(ref nNode.rChild, ++index, length);
return index;
}
}
}
}
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
다양한 언어의 JSONJSON은 Javascript 표기법을 사용하여 데이터 구조를 레이아웃하는 데이터 형식입니다. 그러나 Javascript가 코드에서 이러한 구조를 나타낼 수 있는 유일한 언어는 아닙니다. 저는 일반적으로 '객체'{}...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.