精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

坐在馬桶上看算法:只有五行的Floyd最短路算法

開(kāi)發(fā) 后端 前端 算法
此算法由Robert W. Floyd(羅伯特·弗洛伊德)于1962年發(fā)表在“Communications of the ACM”上。同年Stephen Warshall(史蒂芬·沃舍爾)也獨(dú)立發(fā)表了這個(gè)算法。Robert W.Floyd這個(gè)牛人是朵奇葩,他原本在芝加哥大學(xué)讀的文學(xué),但是因?yàn)楫?dāng)時(shí)美國(guó)經(jīng)濟(jì)不太景氣,找工作比較困難,無(wú)奈之下到西屋電氣公司當(dāng)了一名計(jì)算機(jī)操作員,在IBM650機(jī)房值夜班,并由此開(kāi)始了他的計(jì)算機(jī)生涯。

[[110550]]

暑假,小哼準(zhǔn)備去一些城市旅游。有些城市之間有公路,有些城市之間則沒(méi)有,如下圖。為了節(jié)省經(jīng)費(fèi)以及方便計(jì)劃旅程,小哼希望在出發(fā)之前知道任意兩個(gè)城市之前的最短路程。

081028xjgvimgz7882qdu7.png

上圖中有4個(gè)城市8條公路,公路上的數(shù)字表示這條公路的長(zhǎng)短。請(qǐng)注意這些公路是單向的。我們現(xiàn)在需要求任意兩個(gè)城市之間的最短路程,也就是求任意兩個(gè)點(diǎn)之間的最短路徑。這個(gè)問(wèn)題這也被稱為“多源最短路徑”問(wèn)題。

現(xiàn)在需要一個(gè)數(shù)據(jù)結(jié)構(gòu)來(lái)存儲(chǔ)圖的信息,我們?nèi)匀豢梢杂靡粋€(gè)4*4的矩陣(二維數(shù)組e)來(lái)存儲(chǔ)。比如1號(hào)城市到2號(hào)城市的路程為2,則設(shè)e[1][2]的值為2。2號(hào)城市無(wú)法到達(dá)4號(hào)城市,則設(shè)置e[2][4]的值為∞。另外此處約定一個(gè)城市自己是到自己的也是0,例如e[1][1]為0,具體如下。

081028o2n5ebn8hdeh9e5l.png

現(xiàn)在回到問(wèn)題:如何求任意兩點(diǎn)之間最短路徑呢?通過(guò)之前的學(xué)習(xí)我們知道通過(guò)深度或廣度優(yōu)先搜索可以求出兩點(diǎn)之間的最短路徑。所以進(jìn)行n2遍深度或廣度優(yōu)先搜索,即對(duì)每?jī)蓚€(gè)點(diǎn)都進(jìn)行一次深度或廣度優(yōu)先搜索,便可以求得任意兩點(diǎn)之間的最短路徑。可是還有沒(méi)有別的方法呢?

我們來(lái)想一想,根據(jù)我們以往的經(jīng)驗(yàn),如果要讓任意兩點(diǎn)(例如從頂點(diǎn)a點(diǎn)到頂點(diǎn)b)之間的路程變短,只能引入第三個(gè)點(diǎn)(頂點(diǎn)k),并通過(guò)這個(gè)頂點(diǎn)k中轉(zhuǎn)即a->k->b,才可能縮短原來(lái)從頂點(diǎn)a點(diǎn)到頂點(diǎn)b的路程。那么這個(gè)中轉(zhuǎn)的頂點(diǎn)k是1~n中的哪個(gè)點(diǎn)呢?甚至有時(shí)候不只通過(guò)一個(gè)點(diǎn),而是經(jīng)過(guò)兩個(gè)點(diǎn)或者更多點(diǎn)中轉(zhuǎn)會(huì)更短,即a->k1->k2b->或者a->k1->k2…->k->i…->b。比如上圖中從4號(hào)城市到3號(hào)城市(4->3)的路程e[4][3]原本是12。如果只通過(guò)1號(hào)城市中轉(zhuǎn)(4->1->3),路程將縮短為11(e[4][1]+e[1][3]=5+6=11)。其實(shí)1號(hào)城市到3號(hào)城市也可以通過(guò)2號(hào)城市中轉(zhuǎn),使得1號(hào)到3號(hào)城市的路程縮短為5(e[1][2]+e[2][3]=2+3=5)。所以如果同時(shí)經(jīng)過(guò)1號(hào)和2號(hào)兩個(gè)城市中轉(zhuǎn)的話,從4號(hào)城市到3號(hào)城市的路程會(huì)進(jìn)一步縮短為10。通過(guò)這個(gè)的例子,我們發(fā)現(xiàn)每個(gè)頂點(diǎn)都有可能使得另外兩個(gè)頂點(diǎn)之間的路程變短。好,下面我們將這個(gè)問(wèn)題一般化。

當(dāng)任意兩點(diǎn)之間不允許經(jīng)過(guò)第三個(gè)點(diǎn)時(shí),這些城市之間最短路程就是初始路程,如下。

081029zdxxq919ttqt8tu8.png

如現(xiàn)在只允許經(jīng)過(guò)1號(hào)頂點(diǎn),求任意兩點(diǎn)之間的最短路程,應(yīng)該如何求呢?只需判斷e[i][1]+e[1][j]是否比e[i][j]要小即可。e[i][j]表示的是從i號(hào)頂點(diǎn)到j(luò)號(hào)頂點(diǎn)之間的路程。e[i][1]+e[1][j]表示的是從i號(hào)頂點(diǎn)先到1號(hào)頂點(diǎn),再?gòu)?號(hào)頂點(diǎn)到j(luò)號(hào)頂點(diǎn)的路程之和。其中i是1~n循環(huán),j也是1~n循環(huán),代碼實(shí)現(xiàn)如下。

  1. for(i=1;i<=n;i++)   
  2. {   
  3.     for(j=1;j<=n;j++)   
  4.     {   
  5.  if ( e[i][j] > e[i][1]+e[1][j] )   
  6. e[i][j] = e[i][1]+e[1][j];   
  7.     }   

在只允許經(jīng)過(guò)1號(hào)頂點(diǎn)的情況下,任意兩點(diǎn)之間的最短路程更新為:

081029itl7z7m4l9qqg56d.png

通過(guò)上圖我們發(fā)現(xiàn):在只通過(guò)1號(hào)頂點(diǎn)中轉(zhuǎn)的情況下,3號(hào)頂點(diǎn)到2號(hào)頂點(diǎn)(e[3][2])、4號(hào)頂點(diǎn)到2號(hào)頂點(diǎn)(e[4][2])以及4號(hào)頂點(diǎn)到3號(hào)頂點(diǎn)(e[4][3])的路程都變短了。

接下來(lái)繼續(xù)求在只允許經(jīng)過(guò)1和2號(hào)兩個(gè)頂點(diǎn)的情況下任意兩點(diǎn)之間的最短路程。如何做呢?我們需要在只允許經(jīng)過(guò)1號(hào)頂點(diǎn)時(shí)任意兩點(diǎn)的最短路程的結(jié)果下,再判斷如果經(jīng)過(guò)2號(hào)頂點(diǎn)是否可以使得i號(hào)頂點(diǎn)到j(luò)號(hào)頂點(diǎn)之間的路程變得更短。即判斷e[i][2]+e[2][j]是否比e[i][j]要小,代碼實(shí)現(xiàn)為如下。

  1. //經(jīng)過(guò)1號(hào)頂點(diǎn)   
  2. for(i=1;i<=n;i++)   
  3.     for(j=1;j<=n;j++)   
  4.  if (e[i][j] > e[i][1]+e[1][j])  e[i][j]=e[i][1]+e[1][j];   
  5. //經(jīng)過(guò)2號(hào)頂點(diǎn)   
  6. for(i=1;i<=n;i++)   
  7.     for(j=1;j<=n;j++)   
  8.  if (e[i][j] > e[i][2]+e[2][j])  e[i][j]=e[i][2]+e[2][j]; 

在只允許經(jīng)過(guò)1和2號(hào)頂點(diǎn)的情況下,任意兩點(diǎn)之間的最短路程更新為:

081029e7gjlaaul4zk7z4n.png

通過(guò)上圖得知,在相比只允許通過(guò)1號(hào)頂點(diǎn)進(jìn)行中轉(zhuǎn)的情況下,這里允許通過(guò)1和2號(hào)頂點(diǎn)進(jìn)行中轉(zhuǎn),使得e[1][3]和e[4][3]的路程變得更短了。

同理,繼續(xù)在只允許經(jīng)過(guò)1、2和3號(hào)頂點(diǎn)進(jìn)行中轉(zhuǎn)的情況下,求任意兩點(diǎn)之間的最短路程。任意兩點(diǎn)之間的最短路程更新為:

081029pd747o8o87o07o7l.png

***允許通過(guò)所有頂點(diǎn)作為中轉(zhuǎn),任意兩點(diǎn)之間最終的最短路程為:

081030h7tmht7cs2h7qftu.png

整個(gè)算法過(guò)程雖然說(shuō)起來(lái)很麻煩,但是代碼實(shí)現(xiàn)卻非常簡(jiǎn)單,核心代碼只有五行:

  1. for(k=1;k<=n;k++)   
  2.     for(i=1;i<=n;i++)   
  3.  for(j=1;j<=n;j++)   
  4.      if(e[i][j]>e[i][k]+e[k][j])   
  5.    e[i][j]=e[i][k]+e[k][j]; 

這段代碼的基本思想就是:最開(kāi)始只允許經(jīng)過(guò)1號(hào)頂點(diǎn)進(jìn)行中轉(zhuǎn),接下來(lái)只允許經(jīng)過(guò)1和2號(hào)頂點(diǎn)進(jìn)行中轉(zhuǎn)……允許經(jīng)過(guò)1~n號(hào)所有頂點(diǎn)進(jìn)行中轉(zhuǎn),求任意兩點(diǎn)之間的最短路程。用一句話概括就是:從i號(hào)頂點(diǎn)到j(luò)號(hào)頂點(diǎn)只經(jīng)過(guò)前k號(hào)點(diǎn)的最短路程。其實(shí)這是一種“動(dòng)態(tài)規(guī)劃”的思想,關(guān)于這個(gè)思想我們將在《啊哈!算法2——偉大思維閃耀時(shí)》在做詳細(xì)的討論。下面給出這個(gè)算法的完整代碼:

  1. #include <stdio.h>   
  2. int main()   
  3. {   
  4.     int e[10][10],k,i,j,n,m,t1,t2,t3;   
  5.     int inf=99999999//用inf(infinity的縮寫)存儲(chǔ)一個(gè)我們認(rèn)為的正無(wú)窮值   
  6.     //讀入n和m,n表示頂點(diǎn)個(gè)數(shù),m表示邊的條數(shù)   
  7.     scanf("%d %d",&n,&m);   
  8.   
  9.     //初始化   
  10.     for(i=1;i<=n;i++)   
  11.  for(j=1;j<=n;j++)   
  12.      if(i==j) e[i][j]=0;   
  13. else e[i][j]=inf;   
  14.     //讀入邊   
  15.     for(i=1;i<=m;i++)   
  16.     {   
  17.  scanf("%d %d %d",&t1,&t2,&t3);   
  18.  e[t1][t2]=t3;   
  19.     }   
  20.   
  21.     //Floyd-Warshall算法核心語(yǔ)句   
  22.     for(k=1;k<=n;k++)   
  23.  for(i=1;i<=n;i++)   
  24.      for(j=1;j<=n;j++)   
  25.   if(e[i][j]>e[i][k]+e[k][j] )   
  26.       e[i][j]=e[i][k]+e[k][j];   
  27.   
  28.     //輸出最終的結(jié)果   
  29.     for(i=1;i<=n;i++)   
  30.     {   
  31.      for(j=1;j<=n;j++)   
  32.  {   
  33.      printf("%10d",e[i][j]);   
  34.  }   
  35.  printf("\n");   
  36.     }   
  37.   
  38.     return 0;   

有一點(diǎn)需要注意的是:如何表示正無(wú)窮。我們通常將正無(wú)窮定義為99999999,因?yàn)檫@樣即使兩個(gè)正無(wú)窮相加,其和仍然不超過(guò)int類型的范圍(C語(yǔ)言int類型可以存儲(chǔ)的***正整數(shù)是2147483647)。在實(shí)際應(yīng)用中***估計(jì)一下最短路徑的上限,只需要設(shè)置比它大一點(diǎn)既可以。例如有100條邊,每條邊不超過(guò)100的話,只需將正無(wú)窮設(shè)置為10001即可。如果你認(rèn)為正無(wú)窮和其它值相加得到一個(gè)大于正無(wú)窮的數(shù)是不被允許的話,我們只需在比較的時(shí)候加兩個(gè)判斷條件就可以了,請(qǐng)注意下面代碼中帶有下劃線的語(yǔ)句。

  1. //Floyd-Warshall算法核心語(yǔ)句   
  2. for(k=1;k<=n;k++)   
  3.   for(i=1;i<=n;i++)   
  4.       for(j=1;j<=n;j++)   
  5.  if(e[i][k]<inf && e[k][j]<inf && e[i][j]>e[i][k]+e[k][j])   
  6.      e[i][j]=e[i][k]+e[k][j]; 

上面代碼的輸入數(shù)據(jù)樣式為:

  1. 4 8   
  2. 1 2 2   
  3. 1 3 6   
  4. 1 4 4   
  5. 2 3 3   
  6. 3 1 7   
  7. 3 4 1   
  8. 4 1 5   
  9. 4 3 12 

***行兩個(gè)數(shù)為n和m,n表示頂點(diǎn)個(gè)數(shù),m表示邊的條數(shù)。

接下來(lái)m行,每一行有三個(gè)數(shù)t1、t2 和t3,表示頂點(diǎn)t1到頂點(diǎn)t2的路程是t3。

得到最終結(jié)果如下:

081030is22w3mmnz3r33m3.png

通過(guò)這種方法我們可以求出任意兩個(gè)點(diǎn)之間最短路徑。它的時(shí)間復(fù)雜度是O(N3)。令人很震撼的是它竟然只有五行代碼,實(shí)現(xiàn)起來(lái)非常容易。正是因?yàn)樗鼘?shí)現(xiàn)起來(lái)非常容易,如果時(shí)間復(fù)雜度要求不高,使用Floyd-Warshall來(lái)求指定兩點(diǎn)之間的最短路或者指定一個(gè)點(diǎn)到其余各個(gè)頂點(diǎn)的最短路徑也是可行的。當(dāng)然也有更快的算法,請(qǐng)看下一節(jié):Dijkstra算法。

另外需要注意的是:Floyd-Warshall算法不能解決帶有“負(fù)權(quán)回路”(或者叫“負(fù)權(quán)環(huán)”)的圖,因?yàn)閹в?ldquo;負(fù)權(quán)回路”的圖沒(méi)有最短路。例如下面這個(gè)圖就不存在1號(hào)頂點(diǎn)到3號(hào)頂點(diǎn)的最短路徑。因?yàn)?->2->3->1->2->3->…->1->2->3這樣路徑中,每繞一次1->-2>3這樣的環(huán),最短路就會(huì)減少1,永遠(yuǎn)找不到最短路。其實(shí)如果一個(gè)圖中帶有“負(fù)權(quán)回路”那么這個(gè)圖則沒(méi)有最短路。

081030elthvel6et6k886y.png

此算法由Robert W. Floyd(羅伯特·弗洛伊德)于1962年發(fā)表在“Communications of the ACM”上。同年Stephen Warshall(史蒂芬·沃舍爾)也獨(dú)立發(fā)表了這個(gè)算法。Robert W.Floyd這個(gè)牛人是朵奇葩,他原本在芝加哥大學(xué)讀的文學(xué),但是因?yàn)楫?dāng)時(shí)美國(guó)經(jīng)濟(jì)不太景氣,找工作比較困難,無(wú)奈之下到西屋電氣公司當(dāng)了一名計(jì)算機(jī)操作員,在IBM650機(jī)房值夜班,并由此開(kāi)始了他的計(jì)算機(jī)生涯。此外他還和J.W.J. Williams(威廉姆斯)于1964年共同發(fā)明了著名的堆排序算法HEAPSORT。堆排序算法我們將在第七章學(xué)習(xí)。Robert W.Floyd在1987年獲得了圖靈獎(jiǎng)。

博客地址:http://ahalei.blog.51cto.com/4767671/1383613

責(zé)任編輯:林師授 來(lái)源: 51CTO博客
相關(guān)推薦

2014-03-03 16:44:57

算法

2014-04-08 15:52:03

算法碼農(nóng)

2021-03-10 09:50:15

算法Dijkstra短路問(wèn)題

2011-05-17 13:58:37

最短路徑

2021-08-26 17:36:42

Floyd算法數(shù)據(jù)結(jié)構(gòu)

2013-04-23 09:31:52

SQL Server

2011-12-19 12:39:37

Java

2021-05-10 08:07:40

圖算法路徑頂點(diǎn)

2023-07-03 07:51:47

2010-04-19 11:21:32

天御五行可信行為管理

2022-05-11 07:41:31

Python驗(yàn)證碼

2011-04-11 16:32:28

路徑C++

2024-04-02 11:37:59

AGI網(wǎng)絡(luò)模型GAN

2025-08-11 09:14:00

2011-05-17 14:11:06

Dijkstra

2011-05-17 14:29:29

Dijkstra

2013-12-12 10:27:35

通信網(wǎng)絡(luò)OSPF優(yōu)化

2010-04-28 14:30:18

云計(jì)算

2020-06-28 07:30:00

推薦算法推薦系統(tǒng)

2024-12-13 13:58:53

點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)

热久久天天拍国产| 巨大荫蒂视频欧美另类大| 国产精品观看| 一本一道久久a久久精品逆3p| www婷婷av久久久影片| 日韩一区二区三区在线观看视频 | 欧美一二三四区在线| 欧美一级片免费观看| 国产尤物视频在线观看| 亚洲经典三级| 久久九九免费视频| 亚洲天堂伊人网| 男人av在线播放| 久久夜色精品国产欧美乱极品| 国内精品小视频在线观看| 人人爽人人爽人人片| 伊人久久影院| 欧美色图免费看| 日本毛片在线免费观看| 日本片在线观看| 成人美女在线观看| 91精品在线影院| 无码人妻精品一区二区| 激情欧美一区二区三区| 久久精品99久久久香蕉| 色哟哟网站在线观看| 精品三区视频| 欧美视频免费在线| av无码久久久久久不卡网站| 国产欧美久久久久久久久| 国产色一区二区| 久久99九九| 中文在线字幕免费观| 性高湖久久久久久久久| 欧美黑人xxx| 女~淫辱の触手3d动漫| 成人h动漫免费观看网站| 91精品国产综合久久久久久久| av在线免费观看国产| 尤物网址在线观看| 国产亚洲精品aa午夜观看| 国产呦系列欧美呦日韩呦| 精品人妻一区二区三区四区不卡| av不卡在线看| 午夜精品福利在线观看| 久久综合激情网| 欧美日韩91| 欧美成人精品在线| 午夜爱爱毛片xxxx视频免费看| 国产精品一区二区三区美女| 精品少妇一区二区三区视频免付费| 日韩在线一级片| 精精国产xxxx视频在线野外| 五月天亚洲婷婷| 奇米影视亚洲色图| 老司机深夜福利在线观看| 亚洲成人一二三| 日本视频一区二区在线观看| 欧美理论在线观看| 国产日韩亚洲欧美综合| 先锋影音网一区| 日韩理伦片在线| 亚洲色图欧洲色图婷婷| www.99riav| a级片在线免费| 婷婷夜色潮精品综合在线| 欧美丰满熟妇bbbbbb百度| 日韩伦理在线一区| 欧洲精品一区二区| 亚洲18在线看污www麻豆| 国产日本亚洲| 欧美日韩在线播| 青青视频在线播放| 成人短视频app| 欧美伊人精品成人久久综合97| 久激情内射婷内射蜜桃| 国产不卡网站| 欧美久久婷婷综合色| 中文字幕55页| 日韩精品a在线观看91| 亚洲天堂av网| 欧美第一页在线观看| 亚洲午夜极品| 欧美激情视频免费观看| 日本午夜视频在线观看| 秋霞午夜av一区二区三区| 亚洲a在线观看| 污污视频在线免费看| 国产精品美女久久久久久久久 | 国产精品久久久久影院老司| 一区二区三区一级片| 国内在线免费视频| 亚洲激情成人在线| 日韩av在线第一页| 啪啪av大全导航福利综合导航| 在线观看三级视频欧美| 亚洲视频在线不卡| 亚洲宅男网av| 久久夜色精品亚洲噜噜国产mv | 亚洲高清免费观看高清完整版在线观看| 亚洲欧洲日本国产| avtt亚洲| 精品福利一区二区| 不用播放器的免费av| 要久久爱电视剧全集完整观看| 精品视频在线播放色网色视频| 国产又黄又粗又猛又爽的视频| 国产精品传媒| 色视频www在线播放国产成人| 国产精品综合激情| 99亚洲伊人久久精品影院红桃| 性亚洲最疯狂xxxx高清| 伊人成人在线观看| 久久影院午夜片一区| 午夜啪啪福利视频| 97人人做人人爽香蕉精品| 亚洲国产成人久久| 亚欧洲乱码视频| 黄色成人av网站| 成人欧美在线观看| av在线免费观看网站| 黄色成人在线免费| 9.1在线观看免费| 自拍偷拍一区| 午夜精品一区二区三区在线视频 | 91视频久久| 欧美最顶级的aⅴ艳星| 精品人妻伦一二三区久久| 成人黄色国产精品网站大全在线免费观看| 国产综合av一区二区三区| av在线app| 6080午夜不卡| 黄色性生活一级片| 日韩久久视频| 国产精品成人品| 你懂的视频在线播放| 精品国产成人av| 中国极品少妇videossexhd | 欧美成人精品3d动漫h| 日韩精品一区二区三区在线视频| 亚洲国产网站| 国产精品久久7| 麻豆福利在线观看| 欧美在线观看禁18| 亚洲自拍偷拍图| 狂野欧美一区| 日韩和欧美的一区二区| 性高爱久久久久久久久| 亚洲欧洲美洲在线综合| 69av视频在线| 日本少妇一区二区| 日本a级片久久久| 91大神在线观看线路一区| 国产亚洲精品va在线观看| 国产亚洲成人av| 成人高清免费观看| 91视频最新入口| 日本精品视频| 色婷婷**av毛片一区| 最近中文字幕免费在线观看| av亚洲精华国产精华精| 蜜臀av无码一区二区三区| 最新亚洲国产| 欧美黑人巨大精品一区二区| 欧美熟妇交换久久久久久分类| 日韩理论片中文av| 18深夜在线观看免费视频| 日韩免费久久| 亚洲一区二区免费| 51漫画成人app入口| 亚洲女成人图区| 伊人亚洲综合网| 亚洲黄色尤物视频| 黄色片视频免费观看| 老妇喷水一区二区三区| 亚洲制服欧美久久| 在线观看视频一区二区三区| 欧美在线观看日本一区| av在线播放网| 日韩精品一区二区三区swag| 日韩毛片一区二区三区| 国产精品美女久久久久久久久| 欧美成人xxxxx| 天天射天天综合网| 国产三区二区一区久久| 91国拍精品国产粉嫩亚洲一区 | 成人欧美一区二区三区黑人免费| 精品欧美色视频网站在线观看| 欧美最猛性xxxxx直播| 日本一级二级视频| 91麻豆高清视频| 爱豆国产剧免费观看大全剧苏畅| 国产大片一区| 久久精品国产理论片免费| 欧美videos粗暴| 97免费视频在线播放| 992tv免费直播在线观看| 欧美不卡在线视频| 日韩av片在线播放| 亚洲欧洲www| 无码人妻精品一区二区三应用大全| 尤物网精品视频| 在线综合视频网站| 免费欧美视频| 国产精品永久入口久久久| 欧美日韩伦理一区二区| 91av在线国产| 91精品久久| 欧美mv日韩mv| 国产精品日韩无码| 91福利精品视频| 国内免费精品视频| 久久久精品黄色| 国产精品v日韩精品v在线观看| 久久精品青草| 日韩亚洲一区在线播放| 欧美男男freegayvideosroom| 国产成人在线视频| 麻豆视频免费在线观看| 亚洲免费人成在线视频观看| 丰满人妻一区二区| 欧美精品三级在线观看| 男人天堂视频网| 精品久久久国产精品999| 免费在线观看av网址| 亚洲人精品午夜| 欧美xxxxx精品| 国产成人在线网站| 亚洲欧美天堂在线| 久久爱www久久做| 另类小说第一页| 日韩精品高清不卡| 人妻内射一区二区在线视频 | 中文字幕av一区| 蜜桃免费在线| 精品在线观看国产| 亚洲 欧美 激情 另类| 亚洲成色777777女色窝| 国内爆初菊对白视频| 日韩女优制服丝袜电影| 国产成人精品a视频| 欧美一区二区三区视频免费播放| 国产午夜小视频| 亚洲国产精品综合小说图片区| 中文字幕av网址| 久久先锋影音av鲁色资源网| 麻豆国产精品一区| 2021中文字幕一区亚洲| 中文字幕丰满孑伦无码专区| 91一区在线观看| 三上悠亚ssⅰn939无码播放 | 亚洲一区二区免费视频| 欧美日韩精品在线观看视频 | 久久99精品久久久久婷婷| 岛国大片在线播放| 亚洲区国产区| 777久久久精品一区二区三区 | 色综合视频一区中文字幕| 伊人影院蕉久影院在线播放| 欧美激情二区三区| 男人和女人做事情在线视频网站免费观看| 亚洲激情久久久| 色视频在线观看免费| 亚洲品质视频自拍网| eeuss影院在线观看| 俺去了亚洲欧美日韩| 手机av免费在线| 69**夜色精品国产69乱| 欧美电影免费观看高清完整| 91精品久久久久久久久久| 免费日韩电影| 成人免费福利在线| 成人资源在线| 欧洲一区二区日韩在线视频观看免费| 成人爽a毛片| 青青成人在线| 真实国产乱子伦精品一区二区三区| 色吧亚洲视频| 欧美一区不卡| 欧美精品一区免费| 精品无人码麻豆乱码1区2区| 无码国产精品一区二区免费式直播 | 69av视频在线播放| 欧美综合影院| 成人日韩在线电影| 国内精品国产成人国产三级粉色 | 国产男女激情视频| 国产在线一区二区| gai在线观看免费高清| a亚洲天堂av| 亚洲熟女毛茸茸| 18成人在线视频| 久久久久久久久久久久久久av| 天天色综合天天| 91一区二区视频| 亚洲精品狠狠操| 好了av在线| 欧美高清激情视频| 888av在线视频| 91国产中文字幕| 97精品资源在线观看| 91久久爱成人| 久久视频在线| 97av视频在线观看| 大美女一区二区三区| av资源在线免费观看| 高跟丝袜一区二区三区| 国产极品999| 丝袜一区二区三区| 2022成人影院| 国产欧美一区二区在线播放| 免费看久久久| 中文字幕色呦呦| 99亚洲精品| 亚洲精品久久一区二区三区777| 99re8在线精品视频免费播放| 狠狠人妻久久久久久综合蜜桃| 国产亚洲欧美日韩在线一区| 日韩欧美大片在线观看| 在线视频一区二区免费| 黄频网站在线观看| 久久成年人视频| 亚洲欧美在线人成swag| 欧美激情第六页| 999国产精品| 另类小说第一页| 国产欧美一区二区精品久导航| 亚洲熟女毛茸茸| 欧美人伦禁忌dvd放荡欲情| 成人免费视频| 国产精品久在线观看| 精品美女在线视频| 欧美激情视频一区二区| 日韩毛片一区| 日本高清一区| 欧美成熟视频| 五月天六月丁香| 亚洲免费资源在线播放| 亚洲在线视频播放| 日韩亚洲精品电影| 国产毛片精品久久| 一本色道久久99精品综合| 美女免费视频一区二区| 一级特黄曰皮片视频| 亚洲国产精品尤物yw在线观看| 中文字幕第一页在线播放| 亚洲欧美国产精品| 欧美xxxx免费虐| 国产91精品一区二区绿帽| 伊人精品在线| 亚洲国产欧美视频| 尤物视频一区二区| 亚洲免费不卡视频| 91禁外国网站| 伊人春色精品| 四季av一区二区三区| 有坂深雪av一区二区精品| 空姐吹箫视频大全| 2024亚洲男人天堂| av自拍一区| 人妻熟妇乱又伦精品视频| 国产午夜精品理论片a级大结局| 日韩成人免费在线观看| 精品视频久久久| 九七影院97影院理论片久久| 亚洲欧美一二三| 成人久久久精品乱码一区二区三区 | 亚洲欧洲成人精品av97| 特级西西444www高清大视频| 日韩在线视频中文字幕| 中文久久电影小说| 日韩黄色片视频| 中文字幕在线不卡视频| 性一交一乱一透一a级| 日本久久中文字幕| 99久久亚洲精品| 91视频在线免费| 欧美无砖砖区免费| 最近中文字幕免费mv2018在线| 国产日韩欧美91| 亚洲小说欧美另类社区| 97伦伦午夜电影理伦片| 911国产精品| 久草在线新免费首页资源站| 欧美日韩在线一区二区三区| 99成人在线| 自拍偷拍第9页| 欧美一区二区在线不卡| 中文在线8资源库| 久久riav二区三区| 蜜桃视频第一区免费观看| 国产精品99精品无码视| 欧美不卡123| 成人精品动漫| 亚洲人一区二区| www.亚洲激情.com| 97久久人国产精品婷婷| 欧美亚洲另类视频| 欧美精品日韩| а天堂中文在线资源|