소개:
다음에서 트리형 구조 구성 경로 문자열 배열은 어려울 수 있지만 적절한 기술을 사용하면 효율적으로 달성할 수 있습니다.
해결책:
제공되는 솔루션은 재귀 함수인 AddToTree를 사용합니다. , 트리의 현재 상태를 나타내는 노드 목록과 추가할 나머지 경로 세그먼트를 입력으로 사용합니다. 알고리즘은 다음과 같이 진행됩니다.
코드 조각:
<code class="go">func AddToTree(root []Node, names []string) []Node { if len(names) > 0 { var i int for i = 0; i < len(root); i++ { if root[i].Name == names[0] { //already in tree break } } if i == len(root) { root = append(root, Node{Name: names[0]}) } root[i].Children = AddToTree(root[i].Children, names[1:]) } return root }</code>
솔루션의 장점:
출력 예:
코드는 다음 출력을 생성합니다.
[{ "name": "a", "children": [{ "name": "b", "children": [{ "name": "c" }, { "name": "g" }] }, { "name": "d" }] }]
위 내용은 경로 문자열 배열을 트리형 구조로 어떻게 변환할 수 있나요?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!