最短路径识别方法及装置与流程

文档序号:12824894
最短路径识别方法及装置与流程
本发明涉及互联网领域,具体而言,涉及一种最短路径识别方法及装置。
背景技术
:目前,网站分析系统中的路径导航功能,可以帮助用户发现当前页面的前置页面和后置页面,以及每个前置页面到达当前页面的占比,当前页面到达每个后置页面的占比。虽然通过路径导航能够直观地看到当前页面的前置页面和后置页面,以及各路径的访问占比,但是难以看出网站的最短访问路径。在这种情况下,往往需要用户手动对每条路径进行指标汇总,从而得出最短访问路径。但是,手动操作方式操作步骤繁琐,工作效率低,易出错。针对上述的问题,目前尚未提出有效的解决方案。技术实现要素:本发明实施例提供了一种最短路径识别方法及装置,以至少解决用户手动确定最短访问路径造成的操作步骤繁琐、工作效率低、易出错的技术问题。根据本发明实施例的一个方面,提供了一种最短路径识别方法,包括:获取待识别路径的指定访问起点和指定访问终点;从路径矩阵中查询从上述指定访问起点到达上述指定访问终点需要经过的中间节点,其中,上述路径矩阵用于存储路径,上述路径矩阵的行元素表示从选定的访问起点到各访问终点需要经过的中间节点,列元素表示从各访问起点到选定的访问终点需要经过的中间节点;将从上述指定访问起点经过查询得到的中间节点到达上述指定访问终点的路径作为上述待识别路径的最短路径。进一步地,在将从上述指定访问起点经过查询得到的中间节点到达上述指定访问终点的路径作为上述待识别路径的最短路径之后,上述方法还包括:从用于存储路径长度的值矩阵中查询以上述指定访问起点为起点且以上述指定访问终点为终点的路径长度,其中,上述值矩阵的行元素表示从选定的访问起点到各访问终点的最短路径的路径长度,列元素表示从各访问起点到选定的访问终点的最短路径的路径长度;将查 询得到的路径长度作为从上述指定访问起点到达上述指定访问终点的最短路径的路径长度。进一步地,通过以下步骤创建用于存储路径长度的上述值矩阵:获取上述值矩阵的初始化矩阵,其中,上述初始化矩阵的行元素表示从选定的访问起点到各访问终点的不经过任何中间节点的路径长度,列元素表示从各访问起点到选定的访问终点的不经过任何中间节点的路径长度;依次以{K,K}为中间节点,修改上述初始化矩阵中各元素的数值得到上述值矩阵,其中,K∈[1,n],该步骤包括:依次以{K,K}为中间节点,确定除对角线元素、第K行元素和第K列元素之外的其他元素;依次确定以{m,K}、上述其他元素中的元素{m,h}、{K,K}、{K,h}为元素的二阶矩阵;在{m,K}的值与{K,h}的值之和小于{m,h}的值时,将上述{m,h}的值更新为上述{m,K}的值与上述{K,h}的值之和,直到上述初始化矩阵中各元素的数值不能再更新为止,即得到所述值矩阵。进一步地,从用于存储路径的路径矩阵中查询从上述指定访问起点到达上述指定访问终点需要经过的中间节点包括:从用于存储路径的路径矩阵中查询从上述指定访问起点到达上述指定访问终点需要经过的第一中间节点;判断查询得到的第一中间节点是否为上述指定访问起点的后置页面;在判断结果为查询得到的第一中间节点是上述指定访问起点的后置页面时,确定上述第一中间节点为从上述指定访问起点到达上述指定访问终点需要经过唯一中间节点;和/或在判断结果为查询得到的第一中间节点不是上述指定访问起点的后置页面时,继续从用于存储路径的上述路径矩阵中查询从上述指定访问起点到达上述第一中间节点需要经过的其它中间节点,直到上述其它中间节点为上述指定访问起点的后置页面为止。进一步地,将从上述指定访问起点经过查询得到的中间节点到达上述指定访问终点的路径作为上述待识别路径的最短路径之后,上述方法还包括:在上述指定访问起点和上述指定访问终点分别为网站的访问起点和访问终点时,确定该最短路径为上述网站的最短路径。根据本发明实施例的另一方面,还提供了一种最短路径识别装置,包括:获取单元,用于获取待识别路径的指定访问起点和指定访问终点;第一查询单元,用于从用于存储路径的路径矩阵中查询从上述指定访问起点到达上述指定访问终点需要经过的中间节点,其中,上述路径矩阵用于存储路径,上述路径矩阵的行元素表示从选定的访问起点到各访问终点需要经过的中间节点,列元素表示从各访问起点到选定的访问终点需要经过的中间节点;第一识别单元,用于将从上述指定访问起点经过查询得到的中间节点到达上述指定访问终点的路径作为上述待识别路径的最短路径。进一步地,上述装置还包括:第二查询单元,用于在将从上述指定访问起点经过查询得到的中间节点到达上述指定访问终点的路径作为上述待识别路径的最短路径之后,从用于存储路径长度的值矩阵中查询以上述指定访问起点为起点且以上述指定访问终点为终点的路径长度,其中,上述值矩阵的行元素表示从选定的访问起点到各访问终点的最短路径的路径长度,列元素表示从各访问起点到选定的访问终点的最短路径的路径长度;第二识别单元,用于将查询得到的路径长度作为从上述指定访问起点到达上述指定访问终点的最短路径的路径长度。进一步地,上述装置包括:创建单元,用于通过以下模块创建用于存储路径长度的上述值矩阵:获取模块,用于获取上述值矩阵的初始化矩阵,其中,上述初始化矩阵的行元素表示从选定的访问起点到各访问终点的不经过任何中间节点的路径长度,列元素表示从各访问起点到选定的访问终点的不经过任何中间节点的路径长度;修改模块,用于依次以{K,K}为中间节点,修改上述初始化矩阵中各元素的数值得到上述值矩阵,其中,K∈[6,n],该修改模块包括:第一确定子模块,用于依次以{K,K}为中间节点,确定除对角线元素、第K行元素和第K列元素之外的其他元素;第二确定子模块,用于依次确定以{m,K}、上述其他元素中的元素{m,h}、{K,K}、{K,h}为元素的二阶矩阵;更新子模块,用于在{m,K}的值与{K,h}的值之和小于{m,h}的值时,将上述{m,h}的值更新为上述{m,K}的值与上述{K,h}的值之和,直到上述初始化矩阵中各元素的数值不能再更新为止。进一步地,上述第一查询单元包括:查询模块,用于从用于存储路径的路径矩阵中查询从上述指定访问起点到达上述指定访问终点需要经过的第一中间节点;判断模块,用于判断查询得到的第一中间节点是否为上述指定访问起点的后置页面;确定模块,用于在判断结果为查询得到的第一中间节点是上述指定访问起点的后置页面时,确定上述第一中间节点为从上述指定访问起点到达上述指定访问终点需要经过唯一中间节点;和/或触发模块,用于在判断结果为查询得到的第一中间节点不是上述指定访问起点的后置页面时,触发上述查询模块继续从用于存储路径的上述路径矩阵中查询从上述指定访问起点到达上述第一中间节点需要经过的其它中间节点,直到上述其它中间节点为上述指定访问起点的后置页面为止。进一步地,上述装置还包括:确定单元,用于将从上述指定访问起点经过查询得到的中间节点到达上述指定访问终点的路径作为上述待识别路径的最短路径之后,在上述指定访问起点和上述指定访问终点分别为网站的访问起点和访问终点时,确定该最短路径为上述网站的最短路径。在本发明实施例中,采用借助矩阵识别最短路径的方式,通过获取待识别路径的 指定访问起点和指定访问终点;从用于存储路径的路径矩阵中查询从指定访问起点到达指定访问终点需要经过的中间节点,其中,路径矩阵的行元素表示从选定的访问起点到各访问终点需要经过的中间节点,列元素表示从各访问起点到选定的访问终点需要经过的中间节点;将从指定访问起点经过查询得到的中间节点到达指定访问终点的路径作为待识别路径的最短路径,达到了自动识别最短访问路径的目的,从而实现了简化操作步骤、提高工作效率、降低出错率的技术效果,进而解决了用户手动确定最短访问路径造成的操作步骤繁琐、工作效率低、易出错的技术问题。附图说明此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:图1是根据本发明实施例的一种可选的最短路径识别方法的流程图;图2是根据本发明实施例的路径导航示意图;图3是根据本发明实施例的一种可选的最短路径识别装置的示意图。具体实施方式为了使本
技术领域
的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。实施例1根据本发明实施例,提供了一种最短访问路径识别方法的方法实施例,需要说明 的是,在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。图1是根据本发明实施例的一种可选的最短访问路径识别方法的流程图,如图1所示,该方法包括如下步骤:步骤S102,获取待识别路径的指定访问起点和指定访问终点;步骤S104,从路径矩阵中查询从指定访问起点到达指定访问终点需要经过的中间节点,其中,路径矩阵用于存储路径,路径矩阵的行元素表示从选定的访问起点到各访问终点需要经过的中间节点,列元素表示从各访问起点到选定的访问终点需要经过的中间节点;步骤S106,将从指定访问起点经过查询得到的中间节点到达指定访问终点的路径作为待识别路径的最短路径。实施时,可以由用户指定访问起点和访问终点,该指定的访问起点和访问终点之间的路径即为待识别路径。需要说明的是,识别路径的过程就是确定访问起点和访问终点之间的最短路径的过程。在得到指定访问起点和指定访问终点之后,先找到指定访问起点对应的路径矩阵的行,再找到指定访问终点对应的路径矩阵的列,其中,行、列交叉处的元素对应的就是要查询的中间节点。在找到中间节点后,就可以将指定访问起点->中间节点->指定访问终点作为要找的最短路径。需要说明的是,在本发明中,访问起点和访问终点都可以是网站的页面,并且访问终点即可以是访问起点的前置页面,也可以是访问起点的后置页面。每个网站一般都有多个网页,对于指定的网页而言,它即可以有前置页面,也可以有后置页面。例如,用户访问页面A时,通过点击页面A中链接打开页面B,则页面A称为页面B的前置页面,页面B称为页面A的后置页面。通过上述实施例,只要知道访问路径的访问起点和访问终点,就可以快速、直观地从路径矩阵中查出该访问起点和该访问终点对应的最短路径,达到了自动识别最短访问路径的目的,从而实现了简化操作步骤、提高工作效率、降低出错率的技术效果,进而解决了用户手动确定最短访问路径造成的操作步骤繁琐、工作效率低、易出错的技术问题。为了进一步确定起点到终点之间的最短路径的路径长度,可选地,在将从指定访问起点经过查询得到的中间节点到达指定访问终点的路径作为待识别路径的最短路径之后,上述方法还包括:S2,从用于存储路径长度的值矩阵中查询以指定访问起点为起点且以指定访问终点为终点的路径长度,其中,值矩阵的行元素表示从选定的访问起点到各访问终点的最短路径的路径长度,列元素表示从各访问起点到选定的访问终点的最短路径的路径长度;S4,将查询得到的路径长度作为从指定访问起点到达指定访问终点的最短路径的路径长度。实施时,在得到指定访问起点和指定访问终点之间的最短路径之后,可以先从上述值矩阵中找到指定访问起点对应的行,再找到指定访问终点对应的列,其中,行、列交叉处的元素对应的值就是要查询的最短路径的路径长度。具体地,在找到行、列交叉处的元素后,就可以将该元素的值作为指定访问起点->中间节点->指定访问终点的最短路径的路径长度。通过上述实施例,在确定两点之间的最短路径之后,就可以根据该最短路径的访问起点和访问终点在上述值矩阵中找到一个值等于该最短路径的路径长度的元素,达到了自动、快速确定最短访问路径的目的,从而实现了简化操作步骤、提高工作效率、降低出错率的技术效果。需要说明的是,在实施上述步骤之前,可以预先创建/构造上述值矩阵和路径矩阵。以构造值矩阵为例,可选地,可以通过以下步骤创建用于存储路径长度的值矩阵:S6,获取值矩阵的初始化矩阵,其中,初始化矩阵的行元素表示从选定的访问起点到各访问终点的不经过任何中间节点的路径长度,列元素表示从各访问起点到选定的访问终点的不经过任何中间节点的路径长度;S8,依次以{K,K}为中间节点,修改初始化矩阵中各元素的数值得到值矩阵,其中,K∈[1,n],该步骤包括:S8-2,依次以{K,K}为中间节点,确定除对角线元素、第K行元素和第K列元素之外的其他元素;依次确定以{m,K}、其他元素中的元素{m,h}、{K,K}、{K,h}为元素的二阶矩阵;S8-4,在{m,K}的值与{K,h}的值之和小于{m,h}的值时,将{m,h}的值更新为{m,K}的值与{K,h}的值之和,直到初始化矩阵中各元素的数值不能再更新为止。以下结合图2所示的路径导航示意图及下表,以一个具体实施例详细阐述本发明:需要说明的是,在图2中,每个圆圈表示一个访问节点(即网站页面),圆圈中的数字表示对应节点的编号;通过线段相连的任意两个节点互为前置页面和后置页面, 标注在两个节点之间的线段上的数字表示这两个节点之间的访问路径的路径长度(也称为权重值)。(1)初始化矩阵(在本发明中,以表格的形式描述矩阵):根据图2所示的导航结构,整理并得到权重值的二阶矩阵如表1(a)所示,访问路径的二阶矩阵如表1(b)所示。表1(a)S\T1234567891010∞768331∞∞∞∞∞2∞0501912∞∞∞∞∞3∞∞0∞∞1023∞∞∞4∞∞∞0∞603853∞∞5∞∞∞∞0∞3326∞∞6∞∞∞∞∞0∞∞37957∞∞∞∞∞∞0∞86208∞∞∞∞∞∞∞077299∞∞∞∞∞∞∞∞0∞10∞∞∞∞∞∞∞∞∞0表1(b)其中,S表示访问起点,T表示访问终点,下表同,不再赘述。由于初始状态下各起点(即访问起点,以下简称为起点)到其对应的终点(即访问终点,以下简称为终点)都不经过中间节点,因此在表1(b)中将各起点到其对应的终点经过中间节点设置为-1,-1表示不存在的意思,表1(a)表示在不经过任何中间节点时,各起点到各终点的路径长度。需要说明的是,由于二阶矩阵的对角线元素都是0,因此当这些元素为中间节点时,不会影响路径长度,因此在构造值矩阵的过程中,无需考虑这些元素为中间节点的情况。另外,对于二阶矩阵的第K行元素,在构造值矩阵的过程中,需要比较{k,n}和{k,n}+{k,k},因此,路径长度也不会变,因此也无需考虑这些元素为中间节点的情况。同理,对于二阶矩阵的第K列元素,在构造值矩阵的过程中,需要比较{n,k}和{n,k}+{k,k},因此,路径长度也不会变,因此也无需考虑这些元素为中间节点的情况。其中,结合图2,k=1,2,3,4,5,6,7,8,9,10。(2)以节点1为中间节点:表2由于节点1是网页的起始节点,它自身没有前置页面,因此以节点1为中间节点不会影响各路径的路径长度,由此表2中的数据与表1(a)中的数据相同,且表1(b)保持不变。(3)以节点2为中间节点:表3由于节点2也是网页的起始节点,它自身没有前置页面,因此以节点2为中间节点不会影响各路径的路径长度,由此表3与表2中的数据相同,且表1(b)保持不变。(4)以节点3为中间节点:表4(a)表4(b)S\T123456789101-1-1-1-1-133-1-1-12-1-1-1-1-133-1-1-13-1-1-1-1-1-1-1-1-1-14-1-1-1-1-1-1-1-1-1-15-1-1-1-1-1-1-1-1-1-16-1-1-1-1-1-1-1-1-1-17-1-1-1-1-1-1-1-1-1-18-1-1-1-1-1-1-1-1-1-19-1-1-1-1-1-1-1-1-1-110-1-1-1-1-1-1-1-1-1-1在以节点3为中间节点时,依次以{1,3}、{1,6}、{3,3}和{3,6}元素构成的二阶矩阵时,由于该矩阵的对角线上的元素值之和为76+10=86,且86小于{1,6}对应的值∞,因此,需要将{3,6}对应的值修改为86。类似的,需要将{1,7}由∞修改为99,将{2,6}由∞修改为60,将{2,7}由∞修改为73,其它元素对应的值不做修改。由于1->6 路径长度修改是由于3作为1->6的中间节点导致的,因此在路径矩阵中需要将1->(-1)->6修改为1->3->6,同理,将1->(-1)->7修改为1->3->7,2->(-1)->6修改为2->3->6,2->(-1)->7修改为2->3->7。(5)以节点4为中间节点:表5(a)表5(b)S\T123456789101-1-1-1-1-1334-1-12-1-1-1-1-1344-1-13-1-1-1-1-1-1-1-1-1-14-1-1-1-1-1-1-1-1-1-15-1-1-1-1-1-1-1-1-1-16-1-1-1-1-1-1-1-1-1-17-1-1-1-1-1-1-1-1-1-18-1-1-1-1-1-1-1-1-1-19-1-1-1-1-1-1-1-1-1-110-1-1-1-1-1-1-1-1-1-1需要说明的是,表5(a)与表4(a)相比,修改的矩阵元素如上表所示,其修改原理同表4(a),在此不再赘述。表5(b)与表4(b)相比,修改的矩阵元素如上表所示,其修改原理同表4(b),在此不再赘述。(6)以节点5为中间节点:表6(a)表6(b)S\T123456789101-1-1-1-1-1355-1-12-1-1-1-1-1355-1-13-1-1-1-1-1-1-1-1-1-14-1-1-1-1-1-1-1-1-1-15-1-1-1-1-1-1-1-1-1-16-1-1-1-1-1-1-1-1-1-17-1-1-1-1-1-1-1-1-1-18-1-1-1-1-1-1-1-1-1-19-1-1-1-1-1-1-1-1-1-110-1-1-1-1-1-1-1-1-1-1需要说明的是,表6(a)与表5(a)相比,修改的矩阵元素如上表所示,其修改原理同表5(a),在此不再赘述。表6(b)与表5(b)相比,修改的矩阵元素如上表所示,其修改原理同表5(b),在此不再赘述。(7)以节点6为中间节点:表7(a)表7(b)S\T123456789101-1-1-1-1-1355662-1-1-1-1-1355663-1-1-1-1-1-1-1-1664-1-1-1-1-1-1-1-1665-1-1-1-1-1-1-1-1-1-16-1-1-1-1-1-1-1-1-1-17-1-1-1-1-1-1-1-1-1-18-1-1-1-1-1-1-1-1-1-19-1-1-1-1-1-1-1-1-1-110-1-1-1-1-1-1-1-1-1-1需要说明的是,表7(a)与表6(a)相比,修改的矩阵元素如上表所示,其修改原理同表6(a),在此不再赘述。表7(b)与表6(b)相比,修改的矩阵元素如上表所示,其修改原理同表6(b),在此不再赘述。(8)以节点7为中间节点:表8(a)表8(b)S\T123456789101-1-1-1-1-1355672-1-1-1-1-1355673-1-1-1-1-1-1-1-1674-1-1-1-1-1-1-1-1675-1-1-1-1-1-1-1-1776-1-1-1-1-1-1-1-1-1-17-1-1-1-1-1-1-1-1-1-18-1-1-1-1-1-1-1-1-1-19-1-1-1-1-1-1-1-1-1-110-1-1-1-1-1-1-1-1-1-1需要说明的是,表8(a)与表7(a)相比,修改的矩阵元素如上表所示,其修改原理同表7(a),在此不再赘述。表8(b)与表7(b)相比,修改的矩阵元素如上表所示,其修改原理同表7(b),在此不再赘述。(9)以节点8为中间节点:表9(a)表9(b)S\T123456789101-1-1-1-1-1355672-1-1-1-1-1355673-1-1-1-1-1-1-1-1674-1-1-1-1-1-1-1-1675-1-1-1-1-1-1-1-1876-1-1-1-1-1-1-1-1-1-17-1-1-1-1-1-1-1-1-1-18-1-1-1-1-1-1-1-1-1-19-1-1-1-1-1-1-1-1-1-110-1-1-1-1-1-1-1-1-1-1需要说明的是,表9(a)与表8(a)相比,修改的矩阵元素如上表所示,其修改原理同表8(a),在此不再赘述。表9(b)与表8(b)相比,修改的矩阵元素如上表所示,其修改原理同表8(b),在此不再赘述。(10)以节点9为中间节点:表10由于节点9是网页的终止节点,它自身没有后置页面,因此以节点9为中间节点不会影响各路径的路径长度,由此表10中的数据与表9(a)中的数据相同,且表9(b)保持不变。(11)以节点10为中间节点:表11由于节点9是网页的终止节点,它自身没有后置页面,因此以节点9为中间节点不会影响各路径的路径长度,由此表10中的数据与表9(a)中的数据相同,且表9(b)保持不变。综上,表11对应的矩阵即为针对图2构造的值矩阵,表9(b)对应的矩阵即为针对图2构造的路径矩阵(即Path矩阵)。查询表11和表9(b)可以发现,1->9=123,1->10=84,2->9=97,2->10=65,因此整个网站的最短路径为2->10,其完整路径为2->7->10=>>2->5->7->10。可选地,从用于存储路径的路径矩阵中查询从指定访问起点到达指定访问终点需要经过的中间节点包括:S10,从用于存储路径的路径矩阵中查询从指定访问起点到达指定访问终点需要经过的第一中间节点;S12,判断查询得到的第一中间节点是否为指定访问起点的后置页面;S14,在判断结果为查询得到的第一中间节点是指定访问起点的后置页面时,确定第一中间节点为从指定访问起点到达指定访问终点需要经过唯一中间节点;和/或S16,在判断结果为查询得到的第一中间节点不是指定访问起点的后置页面时,继续从用于存储路径的路径矩阵中查询从指定访问起点到达第一中间节点需要经过的其 它中间节点,直到其它中间节点为指定访问起点的后置页面为止。仍旧以图2和表11、表9(b)为例,经查询表11发现,2->10的最短路径的路径长度为2->10=65,经查询表9(b)发现,2->10的最短路径经过中间节点7,而查看图2发现,节点7不是节点2的后置页面,因此需要继续查询2->7的中间节点,经再次查询表9(b)发现,2->7的需要经过中间节点5,而查看图2发现,节点5是节点2的后置页面,由此,确定出2->10的最短路径需要依次经过中间节点5和7,此时可以终止中间节点的查询程序。通过本发明实施例,可以找出两点之间的最短路径所经过的所有节点,进而得到该两点之间的完整的最短路径。可选地,将从指定访问起点经过查询得到的中间节点到达指定访问终点的路径作为待识别路径的最短路径之后,上述方法还包括:S18,在指定访问起点和指定访问终点分别为网站的访问起点和访问终点时,确定该最短路径为网站的最短路径。例如,如表11和表9(b)及图2所示,最短路径1->10的起点1和终点10分别是起点1和终点10所属网站的起点和终点,此时,在该网站没有其它起点和终点时,可以认为最短路径1->10为该网站的最短路径,但是,如图2所示,由于该网站还有起点2和终点9,因此,需要从1->9、1->10和2->9、2->10中选出最短的路径作为整个网站的最短路径。经比较发现,2->10=65最短,因此2->10为网站的最短路径,其路径长度为65。再例如,最短路径3->10=43,但是由于节点3不是上述网站的起始节点,因此该路径不是上述网站的最短路径。通过本发明实施例,可以根据指定访问起点和指定访问终点在网站中的位置特点,确定这两个点之间的最短路径是否为网站的最短路径。实施例2根据本发明实施例,提供了一种图3是根据本发明实施例的一种可选的最短访问路径识别装置的示意图的装置实施例。图3是根据本发明实施例的一种可选的最短访问路径识别装置的示意图,如图3所示,该装置包括:获取单元302,用于获取待识别路径的指定访问起点和指定访问终点;第一查询单元304,用于从路径矩阵中查询从指定访问起点到达指定访问终点需要经过的中间节点,其中,路径矩阵用于存储路径,路径矩阵的行元素表示从选定的访问起点到各访问终点需要经过的中间节点,列元素表示从各访问起点到选定的访 问终点需要经过的中间节点;第一识别单元306,用于将从指定访问起点经过查询得到的中间节点到达指定访问终点的路径作为待识别路径的最短路径。实施时,可以由用户指定访问起点和访问终点,该指定的访问起点和访问终点之间的路径即为待识别路径。需要说明的是,识别路径的过程就是确定访问起点和访问终点之间的最短路径的过程。在得到指定访问起点和指定访问终点之后,先找到指定访问起点对应的路径矩阵的行,再找到指定访问终点对应的路径矩阵的列,其中,行、列交叉处的元素对应的就是要查询的中间节点。在找到中间节点后,就可以将指定访问起点->中间节点->指定访问终点作为要找的最短路径。需要说明的是,在本发明中,访问起点和访问终点都可以是网站的页面,并且访问终点即可以是访问起点的前置页面,也可以是访问起点的后置页面。每个网站一般都有多个网页,对于指定的网页而言,它即可以有前置页面,也可以有后置页面。例如,用户访问页面A时,通过点击页面A中链接打开页面B,则页面A称为页面B的前置页面,页面B称为页面A的后置页面。通过上述实施例,只要知道访问路径的访问起点和访问终点,就可以快速、直观地从路径矩阵中查出该访问起点和该访问终点对应的最短路径,达到了自动识别最短访问路径的目的,从而实现了简化操作步骤、提高工作效率、降低出错率的技术效果,进而解决了用户手动确定最短访问路径造成的操作步骤繁琐、工作效率低、易出错的技术问题。为了进一步确定起点到终点之间的最短路径的路径长度,可选地,上述装置还包括:第二查询单元,用于在将从指定访问起点经过查询得到的中间节点到达指定访问终点的路径作为待识别路径的最短路径之后,从用于存储路径长度的值矩阵中查询以指定访问起点为起点且以指定访问终点为终点的路径长度,其中,值矩阵的行元素表示从选定的访问起点到各访问终点的最短路径的路径长度,列元素表示从各访问起点到选定的访问终点的最短路径的路径长度;第二识别单元,用于将查询得到的路径长度作为从指定访问起点到达指定访问终点的最短路径的路径长度。实施时,在得到指定访问起点和指定访问终点之间的最短路径之后,可以先从上述值矩阵中找到指定访问起点对应的行,再找到指定访问终点对应的列,其中,行、列交叉处的元素对应的值就是要查询的最短路径的路径长度。具体地,在找到行、列交叉处的元素后,就可以将该元素的值作为指定访问起点->中间节点->指定访问终点的最短路径的路径长度。通过上述实施例,在确定两点之间的最短路径之后,就可以根据该最短路径的访 问起点和访问终点在上述值矩阵中找到一个值等于该最短路径的路径长度的元素,达到了自动、快速确定最短访问路径的目的,从而实现了简化操作步骤、提高工作效率、降低出错率的技术效果。可选地,上述装置包括:创建单元,用于通过以下模块创建用于存储路径长度的值矩阵:获取模块,用于获取值矩阵的初始化矩阵,其中,初始化矩阵的行元素表示从选定的访问起点到各访问终点的不经过任何中间节点的路径长度,列元素表示从各访问起点到选定的访问终点的不经过任何中间节点的路径长度;修改模块,用于依次以{K,K}为中间节点,修改初始化矩阵中各元素的数值得到值矩阵,其中,K∈[6,n],该修改模块包括:第一确定子模块,用于依次以{K,K}为中间节点,确定除对角线元素、第K行元素和第K列元素之外的其他元素;第二确定子模块,用于依次确定以{m,K}、其他元素中的元素{m,h}、{K,K}、{K,h}为元素的二阶矩阵;更新子模块,用于在{m,K}的值与{K,h}的值之和小于{m,h}的值时,将{m,h}的值更新为{m,K}的值与{K,h}的值之和,直到初始化矩阵中各元素的数值不能再更新为止。可选地,第一查询单元包括:查询模块,用于从用于存储路径的路径矩阵中查询从指定访问起点到达指定访问终点需要经过的第一中间节点;判断模块,用于判断查询得到的第一中间节点是否为指定访问起点的后置页面;确定模块,用于在判断结果为查询得到的第一中间节点是指定访问起点的后置页面时,确定第一中间节点为从指定访问起点到达指定访问终点需要经过唯一中间节点;和/或触发模块,用于在判断结果为查询得到的第一中间节点不是指定访问起点的后置页面时,触发查询模块继续从用于存储路径的路径矩阵中查询从指定访问起点到达第一中间节点需要经过的其它中间节点,直到其它中间节点为指定访问起点的后置页面为止。仍旧以图2和表11、表9(b)为例,经查询表11发现,2->10的最短路径的路径长度为2->10=65,经查询表9(b)发现,2->10的最短路径经过中间节点7,而查看图2发现,节点7不是节点2的后置页面,因此需要继续查询2->7的中间节点,经再次查询表9(b)发现,2->7的需要经过中间节点5,而查看图2发现,节点5是节点2的后置页面,由此,确定出2->10的最短路径需要依次经过中间节点5和7,此时可以终止中间节点的查询程序。通过本发明实施例,可以找出两点之间的最短路径所经过的所有节点,进而得到该两点之间的完整的最短路径。可选地,上述装置还包括:确定单元,用于将从指定访问起点经过查询得到的中间节点到达指定访问终点的路径作为待识别路径的最短路径之后,在指定访问起点和指定访问终点分别为网站的访问起点和访问终点时,确定该最短路径为网站的最短路 径。例如,如表11和表9(b)及图2所示,最短路径1->10的起点1和终点10分别是起点1和终点10所属网站的起点和终点,此时,在该网站没有其它起点和终点时,可以认为最短路径1->10为该网站的最短路径,但是,如图2所示,由于该网站还有起点2和终点9,因此,需要从1->9、1->10和2->9、2->10中选出最短的路径作为整个网站的最短路径。经比较发现,2->10=65最短,因此2->10为网站的最短路径,其路径长度为65。再例如,最短路径3->10=43,但是由于节点3不是上述网站的起始节点,因此该路径不是上述网站的最短路径。通过本发明实施例,可以根据指定访问起点和指定访问终点在网站中的位置特点,确定这两个点之间的最短路径是否为网站的最短路径。上述最短访问路径识别装置包括处理器和存储器,上述获取单元、第一查询单元、第一识别单元等均作为程序单元存储在存储器中,由处理器执行存储在存储器中的上述程序单元。处理器中包含内核,由内核去存储器中调取相应的程序单元。内核可以设置一个或以上,通过调整内核参数解析文本内容。存储器可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flashRAM),存储器包括至少一个存储芯片。本申请还提供了一种计算机程序产品的实施例,当在数据处理设备上执行时,适于执行初始化有如下方法步骤的程序代码:获取待识别路径的指定访问起点和指定访问终点;从用于存储路径的路径矩阵中查询从指定访问起点到达指定访问终点需要经过的中间节点,其中,路径矩阵的行元素表示从选定的访问起点到各访问终点需要经过的中间节点,列元素表示从各访问起点到选定的访问终点需要经过的中间节点;将从指定访问起点经过查询得到的中间节点到达指定访问终点的路径作为待识别路径的最短路径。上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。在本发明的上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。在本申请所提供的几个实施例中,应该理解到,所揭露的技术内容,可通过其它的方式实现。其中,以上所描述的装置实施例仅仅是示意性的,例如所述单元的划分, 可以为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,单元或模块的间接耦合或通信连接,可以是电性或其它的形式。所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可为个人计算机、服务器或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、只读存储器(ROM,Read-OnlyMemory)、随机存取存储器(RAM,RandomAccessMemory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。以上所述仅是本发明的优选实施方式,应当指出,对于本
技术领域
的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。当前第1页1 2 3 
再多了解一些
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1