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

進階JavaScript之玩轉(zhuǎn)遞歸與數(shù)列

開發(fā) 前端
在程序中,所謂的遞歸,就是函數(shù)自己直接或間接調(diào)用自己。就遞歸而言,最重要的是跳出結(jié)構(gòu),因為只有跳出結(jié)構(gòu)才可以有結(jié)果。

1、 什么是遞歸

在程序中,所謂的遞歸,就是函數(shù)自己直接或間接調(diào)用自己

1.1 直接調(diào)用自己

  1. function f() { 
  2.     console.log( 1 ); 
  3.     f(); 
  4.  

1.2 間接調(diào)用自己

  1. function f1(){ 
  2.     f2(); 
  3. function f2() { 
  4.     f1(); 
  5.  

就遞歸而言,最重要的是跳出結(jié)構(gòu),因為只有跳出結(jié)構(gòu)才可以有結(jié)果。

1.3 所謂的遞歸就是化歸思想

遞歸的調(diào)用,寫遞歸函數(shù),最終還是要轉(zhuǎn)換為自己這個函數(shù)

加入有一個函數(shù)f,如果他是遞歸函數(shù)的話,也就是說函數(shù)體內(nèi)的問題還是轉(zhuǎn)化為 f 的形式。

遞歸思想就是將一個問題轉(zhuǎn)換為一個已解決的問題來實現(xiàn)

例子:1,2,3,4,...,100,累加的結(jié)果

  • 首先假定遞歸函數(shù)已經(jīng)寫好,假設(shè)是foo,即foo(100) 就是求1到100的和
  • 尋找遞推關(guān)系,就是n與n-1,或n-2之間的關(guān)系:foo( n ) == n + foo( n -1 )
  1. var res = foo( 100 ); 
  2. var res = foo( 99 ) + 100;  
  • 將遞推結(jié)果轉(zhuǎn)換為遞歸體
  1. function foo ( n ) { 
  2.     return n + foo( n -1 ); 
  3.  
  1. 將求100轉(zhuǎn)換為求99
  2. 將求99轉(zhuǎn)換為求98
  3. ...
  4. 將求2轉(zhuǎn)換為求1
  5. 求1結(jié)果就是1
  6. 即:foo( 1 ) 是1
  • 將臨界條件加到遞歸體中
  1. function foo( n ) { 
  2.     return ( n ==1 ) return 1; 
  3.     return n + foo( n -1 ); 
  4.  

2、 遞歸求值舉例

2.1 等差數(shù)列1

數(shù)列:求 1, 3, 5, 7, 9, ... 第 n 項的結(jié)果與前 n 項和. 序號從 0 開始

求第 n 項的值

  • 首先假定遞歸函數(shù)已經(jīng)寫好, 假設(shè)是 fn. 那么 第 n 項就是 fn( n )
  • 找遞推關(guān)系: fn( n ) == f( n - 1 ) + 2
  • 遞歸體
  1. function fn( n ) { 
  2.     return fn( n-1 ) + 2; 
  3.  
  • 找臨界條件

         求 n -> n-1

        求 n-1 -> n-2

        ...

        求 1 -> 0

        求 第 0 項, 就是 1

  • 加入臨界條件 
  1. function fn( n ) { 
  2.     if ( n == 0 ) return 1; 
  3.     return fn( n-1 ) + 2; 
  4.  

前N項的和

  • 假設(shè)已完成, sum( n ) 就是前 n 項和
  • 找遞推關(guān)系: 前 n 項和 等于 第 n 項 + 前 n-1 項的和
  • 得到遞歸體 
  1. function sum( n ) { 
  2.     return fn( n ) + sum( n - 1 ); 
  3. }   
  • 找臨界條件

          n == 1 結(jié)果為1

  • 得到遞歸函數(shù) 
  1. function sum( n ) { 
  2.     if ( n == 0 ) return 1; 
  3.     return fn( n ) + sum( n - 1 ); 
  4. }   

2.2 等差數(shù)列2

數(shù)列:2, 4, 6, 8, 10 第 n 項與 前 n 項和

第n項

  1. function fn( n ) { 
  2.    if ( n == 0 ) return 2;  
  3.    return fn( n-1 ) + 2;  
  4.  

前n項和 

  1. function sum( n ) {  
  2.    if ( n == 0 ) return 2;  
  3.    return sum( n - 1 ) + fn( n );  
  4.  

2.3 差分?jǐn)?shù)列

數(shù)列: 1, 1, 2, 4, 7, 11, 16, … 求 第 n 項, 求前 n 項和.

求第 n 項,從0開始

  • 假設(shè)已經(jīng)得到結(jié)果 fn, fn( 10 ) 就是第 10 項
  • 找遞推關(guān)系

          第 0 項和第 1 項,相差0 => fn( 0 ) + 0 = fn( 1 )

          第 1 項和第 2 項,相差1 => fn( 1 ) + 1 = fn( 2 )

          第 2 項和第 3 項,相差2 => fn( 1 ) + 2 = fn( 2 )

          ...

          第 n-1 項和第 n 項,相差n-1 => fn( n -1 ) + n -1 = fn( n )

  • 遞歸體也就清楚了, 臨界條件是 n == 0 => 1 
  1. function fn ( n ){ 
  2.     if( n == 0 ) return 1; 
  3.     return fn( n -1 ) + n - 1; 
  4.  

如果從 1 開始表示, 那么第 n 項為

  • 假設(shè)已經(jīng)得到結(jié)果 fn, fn( 10 ) 就是第 10 項
  • 找遞推關(guān)系

         第 1 項和第 2 項,相差0 => fn( 1 ) + 0 = fn( 2 )

         第 2 項和第 3 項,相差1 => fn( 2 ) + 1 = fn( 3 )

         第 3 項和第 4 項,相差2 => fn( 3 ) + 2 = fn( 4 )

         ...

        第 n-1 項和第第 n 項,相差 n - 1 => fn( n -1 ) + n -2 = fn( n )

  • 臨界條件 n == 1 => 1

前n項和

  1. function sum( n ) { 
  2.     if ( n == 1 ) return 1; 
  3.     return sum( n - 1 ) + fn( n );  

 2.4 斐波那契數(shù)列

這是最常見,面試***問的知識之一,斐波那契數(shù)列為:1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, …

求其第 n 項

遞推關(guān)系 fn(n) == fn( n- 1) + fn( n - 2),于是,遞歸函數(shù)為 

  1. function fib ( n ) { 
  2.     if( n ==0 || n == 1 ) return 1; 
  3.     return fib( n -1 ) + fib( n -2 ); 
  4.  

3、高級遞歸

3.1 階乘

計算階乘是遞歸程序設(shè)計的一個經(jīng)典示例。階乘是一個運算,計算某個數(shù)的階乘就是用那個數(shù)去乘包括 1 在內(nèi)的所有比它小的數(shù)。例如,factorial(5) 等價于 5*4*3*2*1,而 factorial(3) 等價于 3*2*1。

5! 就是 1 * 2 * 3 * 4 * 5. 0 的階乘是1, 階乘 從 1 開始。

求 n 的階乘

  1. function foo( n ){ 
  2.     if( n == 1 ) return 1; 
  3.     return foo( n -1 ) * n;  
  4. console.log(foo(5));    //120 

 

跟前面的1到100的求和的遞歸函數(shù)很相似,只是一個變種

3.2 求冪

求冪就是求 某一個數(shù) 幾次方

2*2 2 的 平方, 2 的 2 次方

求 n 的 m 次方

最終要得到一個函數(shù) power( n, m )

n 的 m 次方就是 m 個 n 相乘 即 n 乘以 (m-1) 個 n 相乘

  1. function power( n, m ) { 
  2.     if( m == 1 ) return n; 
  3.     return power( n , m -1 ) * n; 
  4.  
  5. console.log(power(2,3)); //8 

 

4、遞歸深拷貝

如果要實現(xiàn)深拷貝,那么就需要考慮將對象的屬性,與屬性的屬性,....都拷貝過來

4.1 簡單實現(xiàn)

如果要實現(xiàn):

  • 假設(shè)已經(jīng)實現(xiàn)clone( o1,o2 ),將對象 o2 的成員拷貝一份交給 o1
  • 簡單的算法,將 o2 的屬性拷貝到 o1 中去
  1. function clone( o1,o2 ){ 
  2.     for( var k in o2 ){ 
  3.         o1[ k ] = o2[ k ];  
  4.     } 

 

  • 找遞推關(guān)系,或叫化歸為已解決的問題

          假設(shè)方法已經(jīng)實現(xiàn),問一下,如果o2[ k ] 是對象

          繼續(xù)使用這個方法

          因此需要考慮的是o2[ k ] 如果是引用類型,再使用一次clone()函數(shù)

          如果o2[ k ] 不是引用類型,那么就直接賦值

  1. function clone( o1, o2 ) { 
  2.         for ( var k in o2 ) { 
  3.             if ( typeof o2[ k ] == 'object' ) { 
  4.                 o1[ k ] = {}; 
  5.                 clone( o1[ k ] , o2[ k ] ); 
  6.             } else { 
  7.                 o1[ k ] = o2[ k ]; 
  8.             } 
  9.         } 
  10.  
  11. var person1 = { 
  12.        name'張三'
  13.        children: [ 
  14.             { name'張一' }, 
  15.             { name'張二' }, 
  16.             { name'王三' } 
  17.        ] 
  18. }; 
  19.  
  20. var person2 = {}; 
  21. clone( person2, person1 ); 

 

4.2 復(fù)雜實現(xiàn) clone( o ) -> newObj

  1. function clone( o ) { 
  2.     var temp = {}; 
  3.     for( var k in o ) { 
  4.         if( typeof o[ k ] == 'object' ){ 
  5.              temp[ k ] = clone( o[ k ] ); 
  6.         } else { 
  7.              temp[ k ] = o[ k ]; 
  8.         } 
  9.     } 
  10.     return temp
  11.  
  12. var person1 = { 
  13.      name'張三'
  14.      children: [ 
  15.         { name'張一' }, 
  16.         { name'張二' }, 
  17.         { name'王三' } 
  18.     ] 
  19. }; 
  20.   
  21.  var person2 = clone(person1); 
  22. // 修改一個看另一個是否也修改 
  23. person2.name = '李四'
  24.   
  25. person2.children[ 0 ].name = '王小虎'
  26. person2.children[ 1 ].name = '張大虎'
  27. person2.children[ 2 ].name = '李長虎'

 

4.3 遞歸實現(xiàn)getElementsByClassName方法

有如下DIV結(jié)構(gòu):

  1. <div> 
  2.     <div>1 
  3.         <div class="c">2</div> 
  4.         <div>3</div> 
  5.     </div> 
  6.     <div class="c">4</div> 
  7.     <div>5 
  8.         <div>6</div> 
  9.         <div class="c">7</div> 
  10.     </div> 
  11.     <div>8</div> 
  12. </div> 

 

  1. 如果實現(xiàn)一個方法byClass( node, 'c', list ),表示在某個節(jié)點上查找符合 class 屬性為 c 的元素
  2. 在當(dāng)前元素的子元素中查找,如果有符合要求的嗎,存儲早一個數(shù)組中
  3. 首先遍歷子節(jié)點,然后看子節(jié)點是否還有子節(jié)點,如果沒有直接判斷,如果有再遞歸
  1. function byClass( node, className, list ){ 
  2.     var nodes = node.childNodes; 
  3.     for( var i=0; i<ndoes.length; i++ ){ 
  4.          if( nodes[ i ].className == className ){ 
  5.              list.push( nodes[ i ] ); 
  6.          } 
  7.          if( nodes[ i ].childNodes.length > 0 ){ 
  8.              byClass( nodes[ i ], className, list ); 
  9.          } 
  10.     } 
  11.  
  12. var arr = []; 
  13. byClass( document.body, 'c', arr ); 
  14. console.log(arr); 

 

責(zé)任編輯:龐桂玉 來源: segmentfault
相關(guān)推薦

2014-04-16 10:54:45

Javascript遞歸調(diào)用

2020-03-09 17:18:47

JavaScript技術(shù)函數(shù)

2021-08-25 07:43:17

AndroidSurfaceViewTextureView

2025-05-07 10:10:00

SystemdLinux運維

2017-08-08 09:15:41

前端JavaScript頁面渲染

2020-12-10 06:01:20

前端Compose方法

2019-07-16 10:35:54

JavaScript進階字符串

2011-07-20 10:27:29

JavaScript

2016-09-06 21:23:25

JavaScriptnode異步

2022-11-08 10:19:15

2022-07-29 08:06:31

物聯(lián)網(wǎng)終端安全

2009-06-30 16:46:45

Criteria進階查

2022-03-01 09:01:56

SwiftUI動畫進階Canvas

2022-03-09 09:00:41

SwiftUI視圖生成器Swift

2010-10-27 13:55:01

memoization遞歸JavaScript

2012-02-22 10:14:44

Java

2021-11-29 08:50:57

Javascript存儲函數(shù)

2014-04-04 11:14:18

JavaScriptStack遞歸

2021-02-16 16:41:45

Vue項目指令

2021-02-26 05:19:20

Vue 3.0 VNode虛擬
點贊
收藏

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

国产免费av一区二区| 韩国三级hd中文字幕有哪些| 国产女主播在线写真| 麻豆视频观看网址久久| 欧美二区在线播放| av黄色免费网站| 欧美黄色一级| 色8久久精品久久久久久蜜| 免费成人深夜夜行网站视频| 六月婷婷中文字幕| 日韩二区三区在线观看| 欧美激情一区二区三级高清视频| 国产精品无码一区二区三区| 日韩最新av| 欧美日韩精品一区二区三区四区 | 成年人在线观看| 成人性生交大片免费看中文网站| 国产精品久久久久久久久久久久久久 | 青青草原成人在线视频| 97成人资源站| 久操成人av| 精品日韩欧美一区二区| 一女二男3p波多野结衣| 僵尸再翻生在线观看| 亚洲日本一区二区| 日本在线观看不卡| 性猛交xxxx| 国产成人av网站| 国产免费成人av| 欧美黄色一级大片| 亚洲每日更新| 久久久久久91香蕉国产| 91日韩中文字幕| 久久国产小视频| 国产午夜一区二区| 国产麻豆天美果冻无码视频| 亚洲精品高潮| 日韩一区二区三区av| 在线观看av网页| 四虎影视4hu4虎成人| 欧美日韩一区二区在线| 欧美日韩亚洲国产成人| aaa在线观看| 国产免费观看久久| 日韩欧美在线电影| 国产色a在线| 久久久久国产免费免费| 欧美xxxx黑人又粗又长精品| 婷婷在线免费视频| 不卡一区在线观看| 久久99精品久久久久久久久久| 性生活视频软件| 国产精品99久| 99精品在线直播| www视频在线| 国产成人综合在线观看| 亚洲最大av在线| 午夜精品久久久久久久99老熟妇| 国产精品一品二品| 亚洲一区二区三| 不卡视频免费在线观看| 国产不卡视频在线观看| 成人欧美一区二区三区视频xxx | 日韩久久精品电影| 熟女少妇一区二区三区| 自拍自偷一区二区三区| 亚洲欧洲自拍偷拍| 91导航在线观看| 国产精品毛片久久| 欧美尺度大的性做爰视频| 欧美三级在线免费观看| 亚洲国产日韩欧美一区二区三区| 96精品视频在线| 蜜臀精品一区二区三区| 久久www免费人成看片高清| 成人黄色av网站| www.亚洲天堂.com| 久久午夜羞羞影院免费观看| 日韩中文字幕一区| 国产一二区在线观看| 亚洲一区二区视频在线观看| 免费一级特黄毛片| 经典三级一区二区| 91精品国产综合久久久蜜臀粉嫩 | av无码精品一区二区三区宅噜噜| 国产91精品在线观看| 久久一区二区精品| 日本在线视频网| 亚洲国产精品精华液网站| 欧美 日韩精品| 欧美成a人片免费观看久久五月天| 欧美一区二区三区视频| 中文在线永久免费观看| 色天天久久综合婷婷女18| 欧美成人精品激情在线观看 | 精品婷婷伊人一区三区三| 亚洲欧美天堂在线| 天天做夜夜做人人爱精品 | 亚洲精品mv| 在线播放/欧美激情| 97香蕉碰碰人妻国产欧美| 色喇叭免费久久综合| 91成品人片a无限观看| 中文字幕一区二区三区四区免费看 | 亚洲欧美二区三区| 日本熟妇人妻xxxxx| 精品国产亚洲一区二区三区大结局 | 国产欧美日韩91| 涩涩视频免费看| 国产精品家庭影院| 播放灌醉水嫩大学生国内精品| 欧美国产视频| 亚洲男人的天堂网站| 美国黄色小视频| 免费人成黄页网站在线一区二区| 国产精品国产精品国产专区不卡| av影片免费在线观看| 午夜精品一区二区三区电影天堂| 亚洲综合日韩欧美| 亚洲精品亚洲人成在线观看| 美女性感视频久久久| 日韩不卡高清视频| 91丨九色丨蝌蚪富婆spa| www.亚洲一区二区| 成人在线视频免费| 亚洲人精选亚洲人成在线| 亚洲精品在线观看av| 激情综合色播激情啊| 日韩精品久久久| 在线观看涩涩| 亚洲精品视频久久| 国产乡下妇女做爰| 国产91丝袜在线播放0| 男人j进女人j| 亚洲日本中文| 久久精品成人一区二区三区| 中文字幕一区二区久久人妻| 欧美精彩视频一区二区三区| 无码人妻精品一区二区三区在线| 波多野结衣欧美| 色综合天天狠天天透天天伊人| 国产精品爽爽久久| 国产精品久久久久一区二区三区| 天天色综合天天色| 日韩欧美一区免费| 国产精品综合网站| 97视频精彩视频在线观看| 色婷婷av一区二区三区软件| 在线免费观看成年人视频| 亚洲日产国产精品| 裸体丰满少妇做受久久99精品| 乱馆动漫1~6集在线观看| 亚洲精品电影网| 青青操免费在线视频| 99久久婷婷国产| 国产女大学生av| 一本色道久久综合亚洲精品酒店| 日本三级久久久| 国产精品二线| 欧美日韩国产一级二级| 小泽玛利亚一区| 国产一区二区三区免费看 | 3751色影院一区二区三区| 182在线观看视频| 国产成人免费视频网站| 国产xxxx振车| 欧美激情极品| 国产极品jizzhd欧美| 在线观看黄av| 日韩欧美高清在线| 日本一区二区不卡在线| 久久伊99综合婷婷久久伊| 成人精品小视频| 99久久婷婷这里只有精品| 91久久精品国产91久久性色tv| 福利成人导航| 国产性色av一区二区| ,一级淫片a看免费| 亚洲v日本v欧美v久久精品| 中文字幕在线观看网址| 免费看日韩精品| 91国在线高清视频| 亚洲人亚洲人色久| 91在线网站视频| 黄视频网站在线观看| 色偷偷亚洲男人天堂| 亚洲精品一区二区三区四区| 色猫猫国产区一区二在线视频| 久久嫩草捆绑紧缚| 成人国产精品视频| 亚洲欧洲日本精品| 亚洲二区免费| 亚洲欧洲精品在线| 久久1电影院| 成人黄色免费在线观看| 岛国av在线播放| 久久精品免费播放| 四虎精品在线| 日韩视频在线你懂得| 中文字幕在线欧美| 亚洲精品高清在线观看| 男人天堂av电影| 国产成人亚洲精品狼色在线| 99蜜桃臀久久久欧美精品网站| 亚洲乱码精品| 色吧亚洲视频| 色综合www| 99国产超薄肉色丝袜交足的后果| 国产综合av| 欧美一级大片视频| 最新av在线播放| 在线精品高清中文字幕| 欧美一区二不卡视频| 欧美片网站yy| 免费视频网站在线观看入口| 亚洲国产美女搞黄色| 欧美性生给视频| 91免费精品国自产拍在线不卡| 日本在线视频播放| 麻豆精品视频在线观看视频| 国产淫片av片久久久久久| 亚洲第一毛片| 青青青青在线视频| 日本成人小视频| 欧美日韩一区在线观看视频| 国产人妖ts一区二区| 91成人免费观看| 欧美一级做a| 国产99视频在线观看| 色在线视频观看| 久久久久久久久亚洲| √天堂8在线网| 免费av一区二区| 中国av在线播放| 久久国产精品亚洲| 久久99精品久久久久久野外| 伊人av综合网| √新版天堂资源在线资源| 夜夜躁日日躁狠狠久久88av| 男女污污视频在线观看| 日韩高清欧美高清| 婷婷色在线观看| 日韩激情视频在线| 五月激情婷婷综合| 日韩电影中文 亚洲精品乱码| 欧美一区二不卡视频| 亚洲精品电影网| 日本一二三区在线视频| 亚洲欧美国产精品va在线观看| 天天干天天色天天| 日韩精品久久久久久福利| 香蕉视频911| 亚洲色图美腿丝袜| 91精品国产91久久久久游泳池 | 1区2区在线| 欧美亚洲视频一区二区| 二区三区不卡| 国产精品日韩欧美大师| 日韩国产大片| 91精品国产高清久久久久久91裸体 | 国产美女免费无遮挡| 国产亚洲欧美日韩在线一区| 先锋影音av在线| 国产精品国产三级国产aⅴ无密码| 国精产品一区一区| 亚洲精品成人在线| 日韩成人免费在线观看| 一本一道久久a久久精品| 69xxxx国产| 在线不卡免费欧美| 亚洲国产综合一区| 日韩精品高清视频| youjizz在线播放| 欧美成人剧情片在线观看| 国产美女情趣调教h一区二区| 欧美亚洲成人网| 亚洲aⅴ网站| 激情伦成人综合小说| 竹菊久久久久久久| 天天操天天干天天玩| 日韩一级大片| 老司机久久精品| 99久久精品99国产精品| www.99热| 亚洲观看高清完整版在线观看| 欧美brazzers| 日韩欧美亚洲国产精品字幕久久久| 少妇av一区二区| 久久韩剧网电视剧| 台湾佬中文娱乐网欧美电影| 成人激情视频小说免费下载| 超碰在线成人| 亚洲精品国产精品国自产| 黄色av日韩| 久草福利视频在线| 成人午夜在线播放| 精品人体无码一区二区三区| 一区二区三区免费看视频| 国产成人无码一区二区在线播放| 日韩一区二区电影| 精品成人一区二区三区免费视频| 久久影视免费观看| 偷拍视频一区二区三区| 91免费看网站| 欧美艳星介绍134位艳星| 久久久久久www| 久久99国产乱子伦精品免费| 波多野结衣影院| 一区二区激情小说| 中文字字幕在线中文乱码| 亚洲精品电影网站| 91cn在线观看| 国产欧美日韩免费| 猛男gaygay欧美视频| 毛片av在线播放| 久久精品国产第一区二区三区| 青青草视频成人| 亚洲一区电影777| 国产又粗又猛又爽又黄视频| 亚洲视频在线免费观看| mm视频在线视频| 不卡视频一区| 在线观看免费一区二区| xx欧美撒尿嘘撒尿xx| 久久精品欧美一区二区三区麻豆| 国产无套在线观看| 日韩视频一区在线观看| 成a人片在线观看| 国产精品丝袜久久久久久高清| 香蕉久久夜色精品国产更新时间 | 日韩电影大全网站| 久久精品综合一区| 亚洲精品韩国| 美女久久久久久久久| 亚洲一区二区三区免费视频| 国产乱码精品一区二区三区精东 | 久久日免费视频| 欧美在线观看禁18| 国产在线视频你懂得| 欧美一级大片在线观看| 秋霞影视一区二区三区| 日本a视频在线观看| 岛国一区二区在线观看| 久久r这里只有精品| 日韩欧美国产精品| 超碰中文在线| 精品视频免费观看| 国产精品久久久久久模特| 亚洲av无码一区二区二三区| 欧美日韩免费在线观看| 日本五码在线| 国产精品com| 欧美大片aaaa| 国产精品久久久久久久av福利| 亚洲免费av在线| 亚洲黄色在线免费观看| 午夜精品久久久久久99热软件| 国产精品18hdxxxⅹ在线| 亚洲熟妇国产熟妇肥婆| 2024国产精品视频| 亚洲色成人www永久网站| 中文字幕av一区二区| 国产在线视频欧美一区| 青春草国产视频| 91视频免费看| 精品国产www| 久久精品国产电影| 香港久久久电影| 男人添女人下面高潮视频| 久久久久久一级片| ,亚洲人成毛片在线播放| 欧美激情国产日韩精品一区18| 粉嫩精品导航导航| aa免费在线观看| 国产精品传媒在线| 亚洲免费视频网| 国产成人精品在线观看| 91精品啪在线观看国产18| 亚洲精品久久一区二区三区777| 五月天婷婷综合| 91看片在线观看| 国产精品xxxx| 青青草一区二区三区| 一区视频免费观看| 国产婷婷色综合av蜜臀av| 9999精品免费视频| 精品视频在线观看一区| 日本一区二区免费在线 | 日本国产亚洲| 欧美精品久久久久久久免费| 国产亚洲精品福利| www.五月天激情| 国产精品99久久99久久久二8| 欧美一区国产在线| 成都免费高清电影| 欧美成人aa大片| 全球最大av网站久久| 蜜臀av无码一区二区三区| 成人欧美一区二区三区| 欧洲毛片在线|