怎么才能更好的理解树形啊
项目中需要用到树形目录,老是理解不来。怎么才能更直观的理解他啊~!
回复讨论(解决方案)
怎么才叫直观呢?
http://bbs.csdn.net 的侧边栏,算不算直观?
不理解原理吗?
怎么才叫直观呢?
id name sysno
1 小黑 0
2 小白 1
3 小红 2
4 小花 2
5 小蓝 1
6 小黄 0
树形是怎么样的呢? 有个例子就能是最直观的了
不理解原理吗?
是的呢~
http://bbs.csdn.net 的侧边栏,算不算直观?
嗯嗯
但是,怎么说呢。具体对应的那些,不理解的呢。
就比如说,在下拉后,怎么判断判断哪些能继续下拉,哪些不能的呢~
1 小黑 0
- 2 小白 1
-- 3 小红 2
-- 4 小花 2
- 5 小蓝 1
6 小黄 0
1 小黑 0
- 2 小白 1
-- 3 小红 2
-- 4 小花 2
- 5 小蓝 1
6 小黄 0
介个~~~有点抽象~~~
哪个是最上级,那几个是同级的啊?
1 小黑 0
- 2 小白 1
-- 3 小红 2
-- 4 小花 2
- 5 小蓝 1
6 小黄 0
介个~~~有点抽象~~~
哪个是最上级,那几个是同级的啊?
第三列,0,1,2就是对应的层级
设计数据库时,就可以用一个字段放层级id,再用一个字段放上一级的层级id
1 小黑 0
- 2 小白 1
-- 3 小红 2
-- 4 小花 2
- 5 小蓝 1
6 小黄 0
介个~~~有点抽象~~~
哪个是最上级,那几个是同级的啊?
第三列,0,1,2就是对应的层级
设计数据库时,就可以用一个字段放层级id,再用一个字段放上一级的层级id
1
-2
--3
6
-5
--4
是不是这样的了呢?
数据产生时,谁是谁的下级,是你指定的
并且在保存时都根据预设的算法留有锚点
比如你 #4 示例的就是 “邻接列表算法” 的数据结构

핫 AI 도구

Undresser.AI Undress
사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover
사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool
무료로 이미지를 벗다

Clothoff.io
AI 옷 제거제

AI Hentai Generator
AI Hentai를 무료로 생성하십시오.

인기 기사

뜨거운 도구

메모장++7.3.1
사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전
중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기
강력한 PHP 통합 개발 환경

드림위버 CS6
시각적 웹 개발 도구

SublimeText3 Mac 버전
신 수준의 코드 편집 소프트웨어(SublimeText3)

뜨거운 주제











Linux 파이프 사용에 대한 심층적인 이해 Linux 운영 체제에서 파이프는 하나의 명령 출력을 다른 명령의 입력으로 사용할 수 있어 다양하고 복잡한 데이터 처리 및 연산을 편리하게 구현할 수 있는 매우 유용한 기능입니다. Linux 파이프가 사용되는 방식에 대한 깊은 이해는 시스템 관리자와 개발자에게 매우 중요합니다. 이 문서에서는 파이프라인의 기본 개념을 소개하고 특정 코드 예제를 통해 데이터 처리 및 작업에 Linux 파이프라인을 사용하는 방법을 보여줍니다. 1. 리눅스 파이프의 기본 개념

Windows 11 시스템의 23h2 버전과 22h2 버전은 각각 2023년과 2022년에 출시될 예정입니다. 일반적으로 시스템 업데이트가 점점 좋아지고 있습니다. 편집자 역시 22h2 버전보다 23h2 버전이 더 좋다고 생각합니다. win1123h2와 22h2 중 어느 것이 더 낫습니까? 답변: win1123h2가 더 낫습니다. 보도에 따르면 win1123h2는 22h2에서 다음 버전까지의 누적 버전 업데이트이며, 모두 동일한 플랫폼이라고 합니다. 이는 두 버전 간에 호환성 문제가 없다는 것을 의미하며, 제때에 업데이트하는 것이 좋습니다. win1123h2 버전은 작업 표시줄 창 응용 프로그램의 병합 안 함 모드와 같은 많은 실용적인 기능을 제공합니다. 더있다

PHP의 값 전달 방법을 올바르게 이해하는 방법 PHP는 웹 개발에 널리 사용되는 스크립트 언어이며, PHP의 매개 변수 전달 방법에는 주로 값 전달과 참조 전달이 포함됩니다. 그리고 PHP에서 값이 전달되는 방식을 이해하는 것은 효율적인 코드를 작성하는 데 중요합니다. 이 기사에서는 PHP의 값 전달 방법을 자세히 설명하고 특정 코드 예제를 사용하여 독자의 이해를 돕습니다. 값 전달 방법의 기본 개념은 변수의 값을 복사하여 함수나 메서드에 전달하는 것입니다. 함수 내의 값에 대한 작업은 영향을 미치지 않습니다.

주석은 Go 프로그래밍에서 매우 중요한 부분입니다. 주석은 프로그래머가 코드의 논리, 목적 및 세부 사항을 더 잘 이해하는 데 도움을 주어 코드의 가독성과 유지 관리 가능성을 향상시킵니다. 이 기사에서는 Go 언어에서 주석의 중요성을 소개하고 이를 특정 코드 예제와 결합하여 주석이 코드 이해에 어떻게 도움이 되는지 설명합니다. 먼저 간단한 Go 프로그램 예를 살펴보겠습니다. packagemainimport "fmt" funcmain(){/

Go 언어 문서의 strings.Split 함수를 깊이 이해하려면 특정 코드 예제가 필요합니다. Go 언어에서는 문자열 작업이 매우 일반적인 요구 사항입니다. 그 중 strings 패키지는 Go 언어에서 제공하는 표준 패키지로, 풍부한 문자열 처리 기능을 제공합니다. 그 중 strings.Split 함수는 일반적으로 사용되는 함수 중 하나이며 해당 함수는 지정된 구분 기호에 따라 문자열을 문자열 조각으로 분할하는 것입니다. 공식적으로 strings.Split 함수를 살펴보기 전에,

최신 웹 애플리케이션의 복잡성이 계속 증가함에 따라 코드 논리도 점점 더 복잡해지고 있습니다. 이 문제를 해결하기 위해 현대 웹 개발에서는 미들웨어가 점점 더 대중화되고 있습니다. ThinkPHP6은 미들웨어도 지원하는 인기 있는 PHP 프레임워크입니다. 이 글에서는 ThinkPHP6 미들웨어의 기본과 실제 사용에 대해 논의하겠습니다. 미들웨어란 무엇입니까? 웹 개발에서 미들웨어는 HTTP 요청 및 응답을 처리하는 방법을 나타냅니다. 클라이언트가 서버에 요청을 보내면,

Go 언어는 여러 측면에서 독특한 디자인과 기능을 갖춘 간결하고 강력한 프로그래밍 언어입니다. 가장 인상적인 기능 중 하나는 배열, 슬라이스, 맵, 채널과 같은 데이터 구조를 반복하는 데 사용되는 range 키워드입니다. 범위의 유연성과 편리함 덕분에 복잡한 데이터 구조를 쉽게 탐색할 수 있지만 많은 사람들이 그 작동 방식에 대해 혼란스러워합니다. 이 기사에서는 범위가 어떻게 작동하는지 간단하고 이해하기 쉬운 방식으로 설명하고 특정 코드 예제를 사용하여 독자의 이해를 돕습니다. 먼저 간단한 예를 살펴보자

JS 이벤트 버블링에 대한 심층적인 이해: 어떤 일반적인 문제가 해결됩니까? 이벤트 버블링은 JavaScript에서 중요한 개념입니다. 이벤트가 트리거 요소에서 상위 요소 또는 더 높은 수준의 요소로 버블링되기 때문에 요소가 이벤트를 트리거하는 경우를 나타냅니다. 웹 개발에서 이벤트 버블링의 원리와 적용을 이해하면 많은 일반적인 문제를 해결하는 데 도움이 될 수 있습니다. 이벤트 버블링의 적용에 대해 정식으로 논의하기에 앞서 먼저 이벤트 버블링의 기본 개념을 이해해 보겠습니다. 다음은 간단한 HTML 코드 예입니다: &l
