00:00
呃,好了各位,那接下来呢,我们来布置一个这个需求,然后在这个需求呢,把咱们大家自己去做一下,然后体会一下,就是咱这个需求到底怎么去做啊,来吧,咱开始,呃,第二个需求我们要做的是什么呢?是所谓的路径分析啊,这个路径分析在这只是什么啊,看一下文档当中的解释,呃,这个所谓的路径分析其实说全了呢,是用户路径分析,那顾名思义呢,这个用户路径指的是什么?就是用户在我们的啊这个移动端的应用,或者是在我们PC端的网站上面的一个访问路径,那我们就称之为是什么所谓的用户路径,对吧?什么叫访问路径呢?比如举个例子啊,比如张三他来到了我们这个P3端的这个页面了,对吧,首先他访问了一个首页,然后呢,访问了一个这个商品列表页,然后访问了一个商品详情页,访问了一个这个下单页面等等,那这个是不是就是一个典型的访问路径啊,对吧?好OK,那我们这个路径分析就是对每个人的访问路径进行统一的分析,好那接下来我们继续往下。
01:01
看,那这个所谓的路径分析它有啥用呢?我们先来大致的了解一下,OK,下边其实已经给出了这个它的一个意义啊,什么意义呢?他说为了衡量网站优化的效果,或者是营销推广的效果,以及了解什么用户行为偏好,时常要对访问路径进行分析。啥意思呢?可能看完之后大家并不能就是深刻的理解它的含义啊,我给大家举个简具体的例子,咱们大概了解一下就行啊,OK,那假如举个例子啊,呃,假如说我们当前呢,呃,就是说诶,我们通过一次路径分析对吧,我发现了一个什么问题呢?发现了我们很多人的访问路径,它都有一个这样的特点,什么特点呢?OK,比如说他走到那个支付页面的时候,OK,那他就退出了。最终都没有去做做那个支付,或者说很少一部分用户去做支付了,大多数都没去做支付,OK,好,那我假如说,诶,我通过路径分析,我发现了一个这样的问题,好,发现这个问题之后,那咱们需要干啥呢?是不是得去找一找,看一看,是不是我们那个支付页面设计的不太好啊,对吧?OK,那比如说我在这儿呢,找到问题了,然后呢,我对这个页面进行了一系列的优化,就比如说我把那个支付按钮做的更大更醒目,对吧?颜色给它调成红色,用来刺激这个,呃,这个人的消费欲望,对吧?等等等等,OK,假如说我把这个东西调完之后,调完之后我要想看一下他有没有效果,这个怎么办呢?我是不是可以再做一次这个用户的路径分析啊,对吧?诶,我看一看大家这次这个,呃,用户访问路径还是是不是还有之前那个特点,是不是还是到这个支付就退出了,诶那如果说诶这回我看着好一点了,对吧?诶我有更多的用户,他点击了这个支付,进到了下边的这个页面了,等等等等,诶那这样一来是不是咱们这个优化就是有效果的呀,对吧?诶这就是所谓的用户路径分析的一个意义,这个呢,咱们大概了解一下就行,这不是咱们的重点,咱重点是。
02:47
啥呢?就是这个需求咱们这个怎么实现对吧,我写词后怎么写对不对?好,那接下来咱们继续往下看啊,那下边呢,我们先来看一下什么呢?先来看一下就是这个所谓的路径分析啊,就是我们将来分析完之后,我们怎样对它进行可视化的展示,因为我们所有的需求,所有的指标,我们将来是不是对应的都是我们的一个一个的报表啊,对吧,报表我们都得用图形化的方式去展示这个结果,OK,好,那我们来看一看这种访问路径我们到底用什么去展示呢?那在这儿我们来看一下,他说用户访问路径的可视化通常使用商机图,这个商机图呢,其实就是一种图表的类型啊,这个大家可能并不是特别熟悉啊,这个就跟谁是类似的呢?比如说咱们大家熟悉的啊,我们有什么饼状图,柱状图,折线图等等,这是咱们大家比较熟悉的这种统计图,对吧?然后呢,桑基图其实也是统计图的一类,可能就是不是那么的常见,好那到底什么是桑基图呢?来我们往下看,这呢我给大家贴。
03:47
一个图,这个图就是一个典型的桑基图来,那现在把它放大一点,咱们看一看,看看大家能不能看明白啊,我先不解释,大家自己看一看这些东西能不能看明白。这个就是我们在这个这个这个书仓里边的这个用户的访问路径的一个分析的结果啊,这个图就展示了用户的访问路径啊,以及一些相关的信息。
04:11
这个大家能看懂吗?呃,来,那现在咱们一起来看一下啊,首先在桑基图当中呢,我们有两种元素,一个元素呢,我们称之为节点,这里边大家看到每个小条,这就是一个节点啊,一个彩色小条,这是一个一个的节点,OK,好,除了有节点还有什么呢?还有连线对吧,那你会发现是不是每两个节点之间是不是都有一个线条啊,对吧?哎,这就是一个连线,好,那完之后在咱们这个图当中,我们每个节点指的是什么?那我们这个线条又是什么含义呢?我给大家解释一下啊,每个节点实际上对应到我们这个用户路径分析上面啊,它指的就是一个啥。就是一个页面对不对,大家注意观察,你看我这最长的这一条,这是一个什么页面呢?后页对不对?那完了之后我这儿有一个什么呢?有一个search页,那这个呢是什么?是good list的页面,商品列表,这个是搜索页对吧?OK,每一个节点其际上对应的就是一个页面,OK,好,那这两个节点之间的连线,在咱这个路径分析当中指的是什么呢?
05:11
其实指就是一个什么呀。跳转。对不对?OK,那其实很简单,你你比如举个例子啊,我这儿有一个search到good list的一个连接,那就表明什么呀,是不是表明有人他之前是从search页是不是跳到了good list的页呀,对吧?而且你会发现那有些人呢,我这儿是不是还有一个从后从卖到什么order安PA的呀,对吧,是不是,这说明有部分人是不是从这个页面跳到了这个页面呀,对不对,也就是一个连线在咱这就表示一次跳转,而且你注意观察这个连线呢,它有粗有细,对不对?OK啊,那比如说这条线条它是不是就比较粗啊,对吧?OK,那比如说下面那个是不是相对来说就比较细,对吧?OK,那这个粗和细表示的是什么呢?哎,对,表示的其实就是流量,哎,或者说直白一点的话呢,是不是就是呃,这个跳转的次数啊,对吧?哎,啥意思?比如举个例子啊,大家来看,那咱们以这儿为例,这个是不是从home到40页啊,对吧?那他这儿是不是比较粗对不对?那我这儿呢,是从home到good detail,这是不是比较细啊,对吧?那就表明什么呢?表明绝大多数的人在浏览完首页之后,是不是进到了四二池页,对吧?OK,那有一少部分人是不是进浏览了首页之后,是不是就直接进到了商品详情页啊,对吧?哎,是这样的,OK,那也就是粗和细,表明我这个流量的多少,或者说是呢,这个说直白一点就是访问次这个跳转次数的多和少,哎,这个大家理解一下就行了,OK啊好了,那这实际上呢,就是这个桑基图的一个基本说明,OK啊好了,那完了之后我们继续往下进行,那为什么我们会用这个桑基图去展示这个用户路径呢?因为桑基图它具备这样的几个特点啊,来咱们看一下他说了。
06:48
我再调小一点啊,他说了这个商机图呢,是能够真实的还原用户的访问路径的,OK,那这个所谓的真实还原呢,包括还原了哪些东西呢?呃,里边包括页面的跳转关系,以及页面的访问次序,也就三级图,它能够为我们还原这些信息,OK,你看一看它是怎样还原出来的啊,你看一下这个,首先我们先看这个页面跳转,页面跳转我们在这个图里边能不能看出来,能对吧?诶这儿是不是有一个连线,就表明有人从这儿是不是跳到了这儿啊对吧?跳转关系咱们是能够清晰的看出来的,那除此之外呢,我们还能看出来什么,还能看出来这个页面的访问次序,对吧?你看一看我拿到这个之后,那比如说我们挑一条最典型的路径啊,那这一条线是不是就是一个路径啊,对吧?OK,你看能不能看出来这个页面的访问次序能对吧?你看我第一个页面浏览的是不是home,第二个是不是search,第三个是不是good list,第四个是不是good detail啊对吧?所以说这个跳转次序咱是不是也能够看出来对不对,所以说。
07:49
桑,截图是能够真实的还原用户的访问路径,哎,这个包括跳转的关系和访问的次序都能够还原出来啊,OK,也就是它其实就是比较适合去做这个路用户路径的一个,呃,可视化的展示,所以说我们这个用户路径分析的结果呢,通常都是用商机图去做展示,诶,这个大家需要理解一下啊,好了,那现在大家应该大概了解了,就是我们这个路径分析将来这个可视化的相关内容了啊好,OK,为什么我在这儿会先给大家去说一下这个可视化呢?其实很简单啊。
08:20
大家都知道我们,诶,甭管将来我们需要去做哪个指标,对吧,甭管我们需要用哪种类型的图去展示,对吧?你是桑基图也好,你是饼状图也好,你是柱状图也好,对不对,你要想用这个图展示,那我们就必须得怎么样呢?必须得按照这个图的要求去给他提供相应的数据,是不是才行啊,对吧?比如说举个例子,假如说我们将来我需要用一个折线图,折线图是大家比较熟悉的这个数据,对吧?OK,那你说你需要给他提供哪些信息呢?那咱是不是得告诉他,我的横轴是哪个字段,我的纵轴是哪个字段,那完之后他是不是才能去描点,才能去连线呀,这个道理吧,也就是说人家你需要用哪种图的这个这个去展示,那你就得按照相应的要求去给他提供诶标准的数据才行,好了,是这样的啊好,那桑基图他需要用到什么样的数据呢?
09:12
来,我们往下看,这其实已经给我们说出来了,桑基图只需要我们给他提供每种页面跳转的次数就行了。啥意思啊?什么叫做每种页面跳转的次数啊?那你说一种页面跳转我应该怎么去表示?是不是就从哪到哪,这是不是就叫一种跳转,对吧?比如说我从A页面到B页面,这是不是就是一种跳转,我从B到C,那是不是就是另外一种跳转,对吧?OK,好,那我们要改给他的数据是什么样的呢?就是每种跳转有多少次,哎,就是这样的,OK,好,那咱们刚才已经提到了,说我每种页面,呃,页面跳转呢,我用从哪到哪去表示,对吧?那具体的这个术语应该是什么呢?就是source加target对不对?Source是不是就我这个跳转的一个起始页面对吧?那target的指的就是啥啊?就是我这个跳转的一个中道页面对不对?我们只需要告诉他s target多少个,S target多少个,S target多少个,那他是不是自动就能够帮我们把这个图给渲染出来呀,对吧?就是这样的一个逻辑啊,是这样的啊,那所以说那咱们是不是只需要按照他的要求,给他提供这样的数据就完事了呀,对吧?啊是这样的啊好了,那大家现在应该对桑基图有了一个初步的认识了,那我会让大家呢,更加生动的去,呃熟悉这个桑基图,在这儿我们可以去看一个东西啊。
10:31
咱看谁呢?给大家看一个看一个东西,咱们去搜一下啊。在这儿呢,我们找一下这个e char,这个e char可能有同学之前是用过的啊,这个e char是什么?E是有百度呃,他们去开源的一个这种可视化图表的一个图表库啊,是这样,它是专门用来做可视化来展示的,那如果说我们将来呃,公司里边咱们需要自己去开发这个报表,OK,那大概率呢,是会用到我们这儿这个e char这个图表库的,当然类似的这种图图表库其实有很多啊,不只有这个什么百度的e char,你像阿里啊也有一个这个,呃,应该是APP特V对不对,那也是可以做各种各样的这个图形化展示的,这个咱们大概了解一下啊,完了玩之后呢,我们现在先看一下这个东西,咱们就是呃玩一玩就行啊,那现在我们点开这个呃一二次,呃完之后,他现在已经是这个阿帕奇的这个项目啊,咱们去访问他阿帕奇的官网吧,好那拿过来了,拿来之后我们现在找谁就行了,我们找一下这个示例,找示例,示例完之后大家注意观察,我们左侧是不是有一个侧边栏啊,对吧,在这个侧边栏当中呢,实际上就展示出了这个一串二所支持的各种各样的图表,类型非常丰富。
11:35
重复啊,那在这咱们找一下谁就找桑级图有没有桑图,有啊,这个桑基图实际上是一个音译啊,它英文对应的是这个3K3K Di gram就是桑基图啊好,那现在呢,我们就以第一个为例,咱们点开看一下这个桑机图到底怎么玩啊,OK,好,左边呢是什么呢。是GS代码,Javascript的代码,也也就是说我们要是想自己去开发咱们的这个呃图这个报表的话呢,我们需要怎么办呢?需要在我们的前端页面是不是需要去引入each叉啊,对吧?啊,然后呢,通过GS去给他传递相应的数据,然后右边呢,它就给咱们会渲渲染出来我们右边这样的一个图啊,是这样的啊好,那接下来呢,我们呃这个GS大家可能不太熟悉啊,但是没关系,不影响咱们去看它需要什么数据啊,它需要的数据是什么样的呢?我们来看一看啊,左边你看他需要的这是不是有一个date呀,对吧,没问题吧,这个date里边是不是理论上就应该展示它需要用到的数据啊,对吧?那它需要什么数据呢?看一看,首先这个date它是一个什么类型的。
12:34
是一个数组对吧?然后这个数组当中的类型是什么,这个元素类型是什么呢?是一个对象对不对?OK,好,那这个对象只有一个字,就是name对吧?这个name你看一看他写的是啥,ABCA1 a2,这是什么东西,这个好像跟右边这个图里边的啥是对应上的呀。节点是能够对上的,对不对?OK,没,没问题吧,OK,好,这是节点,然后接下来继续往下看,这还有一个什么links linkx是不是就是连接呀,对吧,那连接你看它这是怎么去连接的,首先连接后边也是一个数组,对吧?那数组里边呢,每个元素是什么类型呢?也是一个对象,对吧?OK,那对象呢,是不是有三个属性,分别是source target,你看这是不是就是从哪到哪有多少个,从哪到哪有多少个,是不是就给他这个数据就行了,玩这个图是不是就渲染出来了,对吧?OK,是这样的,但其实大家应该能想到我上边这个节点信息是不是不给也行啊,理论上。
13:30
对吧,为啥不给也行呢?我下边这个调整关系里边有没有节点信息,有啊对不对,所以说有些这种普式,呃,可视化的这个工具呢,OK,你是不需要去给他提供这个节点信息的,它是能够自动的根据你下边的这些信息给你推断出来我都有哪些节点,诶这个理解一下啊,好,那个时候咱们重点是不是就是这个所谓的links啊,对吧?OK,那这个怎么玩,其实在这儿呢,咱们能改啊,能改能测,比如举个例子啊。单看这个这个A到A1对应的应该是谁,应该是这条线嘛,对吧?OK,好,那玩这个Y6是不是就表示我这个跳转的一个次数啊,相当于对不对,比如说我这个次数比较多,那在这我给它改成十,你就意观察那个图的变化啊好,你改成十之后,我这是立马这个线条就变粗了呀,对吧,是这样的,OK,好,那这其实就是一个桑基图的一个玩法,相对比较简单啊好了,那现在呢,大家就知道这个桑基图是什么了,也知道桑基图到底需要什么样的数据了,好,那接下来我们再来看一看,就是我们文档当中这个需求,它最终的建表语句是什么样的,也就是说我们到底需要给他什么样的数据啊来CTRLC咱们粘出来,粘出来之后呢,我们放在这个位置啊。
14:35
好,各位同学,我们一起来看一下这个表名,先看一下叫做ADS配置pass,是不是就是A层的一个页面访问路径啊,对吧?好,接下来继续往下看,咱们看一下这个表当中的具体的内容,那首先我们还是先看字段啊,字段呢,首先大家就看这三个字段就行了。这三个字段是不是就正好对应桑基图所需要的数据啊,对不对,你看啊,Source target,然后有一个count对不对,当然在咱们这这个count我们指的是什么呢?是跳转次数对吧?A到B有多少次,B到C有多少次,C到D有多少次,是不是给的这个次数啊,对吧?OK,那这仨字段应该很容易熟悉,好接下来我们看上面上面这俩字段是干啥的呀?
15:15
是不是应该是对应的统计周期吧,对不对,OK啊好,那玩之后这统计周期仍然是俩俩字段组成,一个是re days,这个代表的是什么呢?哎,代表的仍然是一七三十,分别就是最近一期三十日呗,对吧?好,那这个第七是什么意思呢?很简单,你下边算的最近一期三十日是截至哪一天的,最近一期三十日啊,对吧,是不是得用一个日期去给它标识一下,没问题吧,OK啊,好,那这就是咱们这张表的一个具体的这个字段,好了,那字段搞清楚之后呢,那实际上这张表,嗯,他的这个结构基本上也就清晰了,相对比较简单,OK啊,好了,那这就是咱们这个需求的一个,哎最终的说明,那就是我们最终只需要给他什么就行了,给他最近一天的,对吧,我每种跳转的这个次数有多少个,最近七天的每种跳转的次数有多少个,最近30的每种跳转的次数有多个,是不是就完事呀,对吧,应该是这样一个逻辑好了,那当然大家在自己去做这个需求的时候呢,也可以先怎么做啊,先怎么做先。
16:12
先干啥?先简化一下这个需求啊,对吧,我们暂时先不去考虑这个所谓的统计周期,我们先只算一个最近一天的,最近一天算出来是不是再算最近七,最近暂16容易赖对吧?是这样一个逻辑啊好了,那这个完成之后,视频我给他停一下啊。啊好了各位啊,那现在呢,我们继续往下进行,就刚才上节课的时候呢,咱们提到了说呃,我们不能直接使用谁呢?不能直接使用这个last配置ID作为source,配置ID作为target,不能直接用它去统计,对吧?因为用它统计的话呢,咱们最终的结果是不满足桑级图的两个要求的,哪两个要求呢?给大家说一下啊,首先第一个要求就是来我这写一下啊,来这个写一下这个要求,呃要求啊OK,好,那第一点要求是什么呢?呃,这个也下一个是啊第一个要求就是S,它是不能为空的,哎,这是桑机图的一个第一个第一点要求,那OK,那咱们这如果说我直接使用last配ID作为S,那咱们这是不是显然就出现了这个呃,S为空的一个问题了呀,对吧,因为我们每个绘画它的第一个页面,它的上1ID肯定都是空对吧,那所以在这儿这个显然就。
17:28
不满足桑基图的要求,SS不能为空,不满足好,那完之后呢,我们呃,再来看一下我们的第二点要求是什么呢?就是在桑基图当中呢,它要求不能存在环儿,OK,那什么叫不能存在环呢?什么叫做环呢?给大家简单说一下啊,咱们就以这个呃,用户访问页面的路径为例去说明啊,大家想一想,比如我们用户再去浏览咱们这个,呃,比如说一个电商网站的时候,对吧,我有没有可能会出现这样的一个情况啊,比如说我先跳到了A页面。对吧,之后呢,我掉到了B页面完之后呢,我又回来了,我又来到A页面了,你说可不可能出现这种情况,很有可能啊,对吧?啊是这样的啊,那玩了这其实就是一个典型的环,那OK,那这种环你直接交给桑基图去展示的话呢,它没法展示,大家想想是不是这么回事,他这是不是就在那转圈了呀,对吧,相当于无限循环了,对不对,这个它显然是不能展示的,所以说商机图它要求我们的路径当中不能存在环,对不对?那我们在这儿自己模拟生成的数据,它有没有环的,其实我可以明确的告诉大家,肯定是有环的,为啥呢?因为我给大家发的这个日志的配置文件当中,我就给它加上了一个环,来咱们看一眼啊,打开这个,咱看哪个路径呢?我们看这个路径就行。
18:41
就看这个吧,第二一个吧,来大家看这里边我故意的给它放上了一个这样的一个操作,什么操作大家来看啊,首先留在首页,然后搜搜索商品对吧,那之后呢,进到了商品详情,呃,这个商品列表,然后呢,进到了一个具体的商品详情,对不对?之后本来我想干啥呢?我想去加购对吧,那结果呢,我发现我现在没怎么样,没登录之后,他是不是就会去进行登录啊,对吧,登录完之后是不是会自动的又回到good detail页面对不对,你看这儿是不是就出现了一个具体的环啊,对吧,从good detail商品详情到log in,又从log in到good detail,这是不是就是一个典型的环对不对?OK,那对应到我们自己的这个生成的数据当中,咱们也能看出来,这个绘画正好就是刚才我们看到的那个绘画,对吧?那完之后大家来看一看,这里边是不是就会出现了一个从good detail到login,又从log in到呃,诶这个啊,这个还不是那个,但是差不多啊,这个是不是又从login到register了,对吧?从register是不是又到古来对吧?这个最终是不是还是有一个环啊,对不对,是这样的,OK,好,那现在问题来了,这。
19:42
问题怎么去解决?这个咱是不是也是不满足这个上季度的要求的呀,对吧?啊也是在这儿,他的两点要求我们都不满足,咱们都不满足,一个是SS不能留空,但是我们这的S咱们看到了确实是有空的,对不对?第二个呢,是你这个路径呢,你不能直接存在环,对吧?那如果我把这个last配置ID作为S,我把这个配置ID作为target给,是不是显然这里边是有环的呀,对吧?哎,那所以说咱们这两点要求都不满足,现在问题来了,这俩问题咱怎么解决呀?
20:12
对不对,对不对,其实这俩问题都是由什么导致的啊,都是由我们直接把last配置D作为source,把这个配置ID作为target是不是导致的,对吧?那就是说显然我们不能用这个作为source,我们不能用它作为target,对吧?好,那这个到底怎样去处理这个问题,咱一个一个的解决啊,我们先看第一个问题S不能为空,这个问题咱怎么解决。怎么能解决,哎,有的说有同学怎么说呢,我把这样的给他过滤掉是吗?给他剔出去对吧,这样这样做能行吗?能不能咱们试一试啊,就是假如说我现在还是用last配置ID作为source,我还是用配置ID作为target的,对吧?然后我把这种上页ID为空的这样的这个记录给它踢出去,对吧?你踢出去之后咱们来看一看,首先我们得保证什么啊,你得保证你不能破坏原有的访问路径,是这个道理吧,好,那你踢出去之后咱们有没有破坏呢?来看一下啊,呃,这应该就是一个绘画啊,这应是一个绘画,好你把它踢出去了,比如说我们剩下的这个还能不能代表原来那个真实的访问路径了,看一下,诶,Home到search search到good list,诶这好像也没啥变化,对不对?
21:26
是不是好像也保留了原来的那个访问路径啊,对吧,好像是可以的,诶,但是这只是一个特殊情况,我们需要考虑到一个,呃,另外一种情况,什么情况呢?诶大家都知道我们前面介绍过一种绘画叫做跳出绘画,对吧?跳出绘画是不是只有一个页面对不对?OK,那你相当于你要是过滤的话,是不是直接把它过滤掉了对不对,那那是不是这样的绘画就没了呀?对,所以说你会,哎,就是少一部分真实的访问路径,这个显然是不行的,所以不能直接这么简单粗暴啊,那怎么办呢?那怎么办呢?呃,到后怎么到后。
22:02
呃,这个不行,那你的你的意思就是OK,我把这个闹直接给它变成一个具体的值是吗?这个不太合适啊,不太合适啊,那咱们用谁用谁用配置ID做做什么。用配置ID做开窗对吧,那然后呢,用它作为什么呢?是source是他给的呀。用它作为source对吧?那谁作为target,用它的下一行作为target什么?OK,其实这个词数是可行的,来咱们分析分一下,它这啥意思呢?其实这个呃,它应该是这个意思呢,就是说我现在呢,不用last配置ID作为source了,我用配置ID用当前页面作为source对吧?那谁用谁作为target的呢?哎,他刚才同学说的是用它的下一行作为target给的,其实准确段应该是什么呢?应该是用它的下页ID是不是作为他给的对不对?OK啊,那原来我们是用上页ID作为S,本页ID作为他给的,完了之后呢,我们出现了S为空的情况,对吧?那么这我现在变一下,我用什么呢?我用本页ID作为source,我用下一页ID,我作为什么呢?作为是不是target大家对吧?OK,好,那你看这样一来的话,那咱们这个S还会不会出现为空的情况?
23:18
不会了,本页ID嘛,本页ID肯定不可能为空啊,对不对?好,那完之后下一页ID有没有可能出现空的情况的,其实有,对吧,你比如说我到了这个本绘画的最后一个页面了,对吧?比如以它为例,那它后边还有页面嘛,没了,那没了是不是就是空的呀?对吧?那这个是空影响这个三级图的展示嘛,不影响,因为三机图没这个要求,他只要求SS不能为空,那就完事了,对不对?OK,那所以说那这个方案其实是可行的,那关键问题是怎样拿到每一个配置ID的下页ID呢?其实刚才同学已经给出方案了,对吧,是不是可以用开窗去拿下一行了,对吧?咱们拿这个我就不再多说了,给大家一点思考空间,到时候大家自己想啊,好,那这个第一个问题咱们就很愉快的解决了,对吧?好,那接下来我们看第二个问题不能存在环对不对,OK啊,那首先我们先假定啊,我们现在已经把第一个问题解决了,我们已经拿到了每一个配置ID的是不是那个下页ID了,对吧?好,都拿到了,你说都拿到之后,我这里边儿这个环还存在不存在。
24:19
这活儿存在不存在?这个活儿其实仍然存在,是是这个道理吧,啊,是仍然存在的啊,那咱们在这儿呢,就以它为例啊,比如举例子,那现在呢,我的当前业的ID,比如说是这个good,呃,Detail,对不对?那它的下1ID是谁?是不是就是log in对吧?OK log in是不是变成了这个位置了对吧?OK,好,那完之后log in下一个ID是谁?是register对吧?那完register下一个是谁呢?是good detail,是不是你跳半天最后你还是会跳到good detail啊,对不对?那也就是说你这个仍然是存在环的,关键问题是环到底咋解决呀?环怎么解决?哎,有的可能说了,我能不能直接把那个重复的那个,呃,那个就是来回访问都给他删一部分呢,能删吗?不能删,咱们这要求必须得,哎这个保留真实的法路径才行,对不对,但是呢,方地图还要求了你不能存在环,但是我真实的路径里面它就是有环啊对吧,在这个好像有点矛盾对不对,这个到底怎么搞?
25:15
怎么搞?哎,对,其实我文档当中就已经给出了答案了啊,就是大家仔细看一下这个图,大家就能够找到答案。你看能不能找到答案。应该能找着吧,对吧?解决这个问题的关键其实就是啥呢?就是前面这个序号对不对,OK啊,大家注去观察,咱们就还是以谁为例呢?咱就以这个访问路径为例啊,来大家各位同学我们一起来看一看啊,那这块它是怎么做的,你看就是本来这个路径上面是存在环的,是从good detail跳到了log in,要从log in跳到了good detail对吧?哎,但是我现在呢,我给每一个页面我都加上了一个序号,对吧?你本次会话,你浏览的第一个页面我给你加个一,你第二个页面我给你加个二,这个加个三,这个加个四,这个加五加个六,对不对,加完这个之后,你就会发现它就变成了什么,是从四固detail到5LOG,又从5LOG in到6GOOD detail了,OK,好,那这样一来的话呢,我们是不是首先在我们人看来,我这个所谓的一个环的访问,咱们是不是把它给留下来了,对不对,你从这儿到这儿,又从这儿又回来了,咱是不是把这个路径给留来了,对吧?但是从桑基图这个角度去考虑对不对,他认为这俩是同一个页面嘛,他不认为对不对,OK,他认为。
26:28
4GOOD是不等于6GOOD的,对不对?哎,那这样一来的话,我们就相当于把这个问题解决了对吧?既保留了这个真实的访问路径,又把这个桑基图给骗了一下,对不对?来,那这样一来咱这个问题就解决了啊,是这样的啊,这就是我们解决桑基图要求不能存在环的这样的一个思路啊好了,那现在呃,这两个问题是什么我已经说了,然后大体的一个解决方案我基本上也已经给大家提示出来了啊,然后剩下的东西就大家自己去写了,这个三个到底怎么写我就不再多说了啊好了,那现在大家对这个需求应该已经明确了吧,Oko OK,好,明确之后,那剩下的时间大家就来抓紧时间把这个实现一下吧,来,视频我给他停一下啊。
我来说两句