首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

多叉树结合JavaScript树形组件实现无限级树形结构(一种构建多级有序树形结构JSON(或XML)数据源的方法)

在Web应用程序开发领域,基于Ajax技术的JavaScript树形组件已经被广泛使用,它用来在Html页面上展现具有层次结构的数据项。目前市场上常见的JavaScript框架及组件库中均包含自己的树形组件,例如jQuery、Ext JS等,还有一些独立的树形组件,例如dhtmlxTree等,这些树形组件完美的解决了层次数据的展示问题。展示离不开数据,树形组件主要利用Ajax技术从服务器端获取数据源,数据源的格式主要包括JSON、XML等,而这些层次数据一般都存储在数据库中。“无限级树形结构”,顾名思义,没有级别的限制,它的数据通常来自数据库中的无限级层次数据,这种数据的存储表通常包括id和parentId这两个字段,以此来表示数据之间的层次关系。现在问题来了,既然树形组件的数据源采用JSON或XML等格式的字符串来组织层次数据,而层次数据又存储在数据库的表中,那么如何建立起树形组件与层次数据之间的关系,换句话说,如何将数据库中的层次数据转换成对应的层次结构的JSON或XML格式的字符串,返回给客户端的JavaScript树形组件?这就是我们要解决的关键技术问题。本文将以目前市场上比较知名的Ext JS框架为例,讲述实现无限级树形结构的方法,该方法同样适用于其它类似的JavaScript树形组件。

00
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    MLSys提前看 | 机器学习的分布式优化方法

    随着机器学习算法和模型的不断发展,传统的软硬件平台、部署环境等无法支撑机器学习的应用,这也成为了目前机器学习方法落地及大规模推广应用的主要困难之一。目前,有关于 MLSys 的研究方向包括硬件领域、软件领域和对机器学习算法的改进三个方面,以 MLSys 2020 为例,本届大会的议题包括:Distributed and parallel learning algorithms(5 篇论文)、Efficient model training(8 篇论文)、Efficient inference and model serving(8 篇论文)、Model/Data Quality and Privacy(4 篇论文)、ML programming models and abstractions & ML applied to systems(5 篇论文)以及 Quantization of deep neural networks(4 篇论文)。整个会议一共录用 34 篇论文。

    04

    【数据结构】图

    1. 图这种数据结构相信大家都不陌生,实际上图就是另一种多叉树,每一个结点都可以向外延伸许多个分支去连接其他的多个结点,而在计算机中表示图其实很简单,只需要存储图的各个结点和结点之间的联系即可表示一个图,顶点可以采取数组vector存储,那顶点和顶点之间的关系该如何存储呢?其实有两种方式可以存储顶点与顶点之间的关系,一种就是利用二维矩阵(二维数组),某一个点和其他另外所有点的连接关系和权值都可以通过二维矩阵来存储,另一种就是邻接表,类似于哈希表的存储方式,数组中存储每一个顶点,每个顶点下面挂着一个个的结点,也就是一个链表,链表中存储着与该结点直接相连的所有其他顶点,这样的方式也可以存储结点间的关系。

    01
    领券