青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

posts - 297,  comments - 15,  trackbacks - 0
(說明:這些題就不是什么花樣了,考的是你的基礎(chǔ)知識(shí)怎么樣。再聰明而沒有實(shí)學(xué)的人都將會(huì)被這些題所淘汰。) 
1.鏈表和數(shù)組的區(qū)別在哪里?

ANSWER 主要在基本概念上的理解。但是最好能考慮的全面一點(diǎn),現(xiàn)在公司招人的競爭可能就在細(xì)節(jié)上產(chǎn)生,誰比較仔細(xì),誰獲勝的機(jī)會(huì)就大。

1)數(shù)組在內(nèi)存中是逐個(gè)存放的,也就是說倘若數(shù)組的第一個(gè)元素在地址A,則數(shù)組第二個(gè)元素就在地址A+1。而鏈表則不是,鏈表每個(gè)節(jié)點(diǎn)沒有相對(duì)固定的位置關(guān)系。某個(gè)節(jié)點(diǎn)在地址A其后的節(jié)點(diǎn)不一定是A+1,而在內(nèi)存的其他空閑區(qū)域,呈現(xiàn)一種隨機(jī)的狀態(tài)。

2)數(shù)組一旦顯式的被申明后,其大小就固定了,不能動(dòng)態(tài)進(jìn)行擴(kuò)充。而鏈表則可以,可以動(dòng)態(tài)生成節(jié)點(diǎn)并且添加到已有的鏈表后面。

3) …… (大家一起想想)

 

2.編寫實(shí)現(xiàn)鏈表排序的一種算法。說明為什么你會(huì)選擇用這樣的方法?

ANSWER 鏈表通常是插入排序,為什么呢?在數(shù)組中插入排序?qū)崿F(xiàn)時(shí)會(huì)大量的移動(dòng)數(shù)據(jù)從而刪除位置不正確的元素,這是順序表刪除操作的低效性。從數(shù)學(xué)的角度,順序表 (即數(shù)組)的刪除操作是O(n).鏈表就不同,由于其存儲(chǔ)位置的不固定性,其刪除固定位置的元素只需要O(1)的時(shí)間,所以整體性能上獲得比較大的提高。

 

3.編寫實(shí)現(xiàn)數(shù)組排序的一種算法。說明為什么你會(huì)選擇用這樣的方法?

ANSWER 排序算法非常成熟了,實(shí)際上排序是研究算法的很有效例子。回答的時(shí)候盡量找一些比較有技術(shù)性的算法,比如堆排序或者快速排序,如果寫冒泡什么的,別人都會(huì) 寫,也就顯示不出你的優(yōu)秀了。當(dāng)然一定要注意給定的條件。不至于三個(gè)數(shù)讓你排序,你搞個(gè)快排,這就有點(diǎn)“宰牛刀殺雞”了。

 

4.請(qǐng)編寫能直接實(shí)現(xiàn)strstr()函數(shù)功能的代碼。

ANSWER 首先要知道strstr()這個(gè)函數(shù)是干什么的,自己去查查C語言的書,一般附錄后面會(huì)給出C語言標(biāo)準(zhǔn)庫的。這個(gè)題目實(shí)際上也是一類重要的算法門類,叫做 “字符串的模式匹配”。它有很多的現(xiàn)成算法,其中最簡單的要數(shù)樸素的匹配算法,還有KMP,BM這些高級(jí)算法,筆試估計(jì)是來不及寫的。下面給出樸素的匹配 算法。

int stringMatching(char* pattern,char* text)

{

         int pLen = strlen(pattern),tLen = strlen(text);

         for(int i = 0;i <= tLen - pLen;i++){

      for(int j = 0; pattern[j] == text[i + j];j++);

                   if(j == pLen) return i;

         }

         return -1; // Not found

}

 

 

5.編寫反轉(zhuǎn)字符串的程序,要求優(yōu)化速度、優(yōu)化空間。

ANSWER:循環(huán)當(dāng)然是最簡單的。

void reverseString(char* str)

{

         int n = strlen(str);

         for(int i = 0;i < n/2;i++)

         {int t = str[i];str[i] = str[n - i - 1];str[n - i - 1] = t;}

}

 

6.在鏈表里如何發(fā)現(xiàn)循環(huán)鏈接?

ANSWER: 顯然只需要判斷是否存在回溯指針就行了。判斷,是否存在某個(gè)節(jié)點(diǎn)的后繼指向其前面位置的指針。具體實(shí)現(xiàn)的時(shí)候可以模仿DFS中的訪問標(biāo)志數(shù)組的方法,我們可以在struct node中設(shè)計(jì)該節(jié)點(diǎn)的一個(gè)訪問標(biāo)志位,設(shè)為visited 。每訪問一個(gè)節(jié)點(diǎn)就將其visited域置為1。這樣的話,一次遍歷下來,如果發(fā)現(xiàn)某個(gè)后續(xù)節(jié)點(diǎn)的visited域已經(jīng)是1,那么就可以判定其存在循環(huán)鏈接。具體的代碼就不寫了,太簡單了。

bool findloop(node *head)

 { node *pf=head;

   node *ps=head->next;

   while(pf!=NULL&&ps!=NULL&&pf->next!=NULL&&ps->next!=NULL)

   { pf=pf->next;

     ps=ps->next->next;

     if(pf==ps)return true;

   }

return false;

 }


7.寫一個(gè)函數(shù),檢查字符是否是整數(shù),如果是,返回其整數(shù)值。(或者:怎樣只用4行代碼編寫出一個(gè)從字符串到長整形的函數(shù)?)

分析 :簡單!掃描一遍,每次生成對(duì)應(yīng)整數(shù)的最高位。一行也就搞定了!

long convert(char* s_string,long s_integer)

{

for(int sLen = strlen(s_string), i = 0; i < sLen;s_integer += (s_string[i++] - '0')*pow(10,sLen - i - 1));

         return s_integer;

}

 

8.給出一個(gè)函數(shù)來輸出一個(gè)字符串的所有排列。

ANSWER 簡單的回溯就可以實(shí)現(xiàn)了。當(dāng)然排列的產(chǎn)生也有很多種算法,去看看組合數(shù)學(xué),還有逆序生成排列和一些不需要遞歸生成排列的方法。印象中Knuth的< TAOCP>第一卷里面深入講了排列的生成。這些算法的理解需要一定的數(shù)學(xué)功底,也需要一定的靈感,有興趣最好看看。

void permStr(char* str,int i)

{

         if(i == strlen(str) - 1)

           printf("%s\n",str);

         else

         {

            for(int j = i;j < strlen(str);j++)

            {

                      swap(&str[i],&str[j]);

                      permStr(str,i + 1);

                      swap(&str[i],&str[j]);

            }

         }

}

 

9.給出一個(gè)函數(shù)來復(fù)制兩個(gè)字符串A和B。字符串A的后幾個(gè)字節(jié)和字符串B的前幾個(gè)字節(jié)重疊。

anSwer  記住,這種題目往往就是考你對(duì)邊界的考慮情況。編程除了技術(shù)上的熟練以外,細(xì)心也是非常重要的。其實(shí)很多編程的大師可能并不是有特別的技術(shù),往往就是他們 非常的耐心和細(xì)心,記?。壕幊淌怯?jì)算機(jī)科學(xué)中最基本的工作,它是最容易去掌握的,耐心點(diǎn),細(xì)心點(diǎn)你一定能夠?qū)W好它。代碼看下面:

char* myStrcpy(char* s,char* a,char* b,char n)

{

int aLen = strlen(a),bLen = strlen(b);

         if(n > aLen || n > bLen)

                   return NULL; // Error

         for(int i = 0;i < aLen + bLen - n;i++)

                   if(i < aLen - n) s[i] = a[i];

                   else s[i] = b[i - aLen + n];

                   s[i] = '\0';

                   return s;

}

 

10.怎樣編寫一個(gè)程序,把一個(gè)有序整數(shù)數(shù)組放到二叉樹中?

ANSWER :二叉搜索樹的建樹方法。簡單的遞歸結(jié)構(gòu)。實(shí)在不理解,干脆記下來好了。關(guān)于樹的算法設(shè)計(jì)一定要聯(lián)想到遞歸,因?yàn)闃浔旧砭褪沁f歸的定義。這里的遞歸應(yīng)該是 理所當(dāng)然的吧,不過,學(xué)會(huì)把遞歸改稱非遞歸也是一種必要的技術(shù)。畢竟,遞歸會(huì)造成棧溢出,關(guān)于系統(tǒng)底層的程序中不到非不得以最好不要用。但是對(duì)某些數(shù)學(xué)問 題,就一定要學(xué)會(huì)用遞歸去解決。

void insertNode(bTree** root,int val)

{

    bTree* newNode = (bTree* ) malloc(sizeof(bTree));

         newNode->data = val;

        newNode->lChild = NULL;

        newNode->rChild = NULL;

      if(!(*root))

            *root = newNode;

    else if(newNode->data < (*root)->data)

          insertNode(&(*root)->lChild,val);

         else

          insertNode(&(*root)->rChild,val);  

}

 

11.怎樣從頂部開始逐層打印二叉樹結(jié)點(diǎn)數(shù)據(jù)?請(qǐng)編程。

ANSWER 二叉樹的層次遍歷沒什么好說的,如果你不會(huì)還是早點(diǎn)把基礎(chǔ)復(fù)習(xí)一下。一個(gè)勁的往后學(xué),才會(huì)發(fā)現(xiàn)原來最最重要的還是以前最基礎(chǔ)最簡單的。

typedef struct myBinaryTree

{

         int data;

         struct myBinaryTree* lChild;

         struct myBinaryTree* rChild;

} bTree;

 

struct myQueen

{

         bTree* que[QSIZE];

         int front;

         int rear;

} binQueue; // Global var

 

void initQueue()

{

         // front == real makes the queue empty

         binQueue.rear = QSIZE - 1;

         binQueue.front = binQueue.rear;

         for(int i = 0;i < QSIZE;i++)

           binQueue.que[i] = NULL;

}

 

int enQueue(bTree* newNode)

{

         if(binQueue.front >= 1)

         binQueue.que[binQueue.front--] = newNode;

        

         else return 0;

         return 1;

}

 

bTree* deQueue()

{

         int t;

      if(binQueue.front != binQueue.rear){

         t = binQueue.rear;

         binQueue.rear--;

    return binQueue.que[t];

         }

         else return NULL;

}

int levelTraversal(bTree** root)

{

         initQueue();

         bTree* lc = (bTree* ) malloc(sizeof(bTree));

         bTree* rc = (bTree* ) malloc(sizeof(bTree));

         bTree* p = (bTree* ) malloc(sizeof(bTree));

         if((!lc) || (!rc) || (!p)){

         printf("OVERFLOW\n");

         exit(OVERFLOW); // Allocation Error

         }

         p = *root;

         if(!p) {

                   printf("Empty Tree,build it first !\n");

             return 0;

         }

         enQueue(p); // enqueue the root of the tree

      while (binQueue.front != binQueue.rear){

       p = deQueue();

            printf("%d ",p->data);

            lc = p->lChild;

            rc = p->rChild;

            if(lc != NULL)

                      enQueue(lc);

          if(rc != NULL)

                      enQueue(rc);

         }

         printf("\n");

         return 1;

}

 

12.怎樣把一個(gè)鏈表掉個(gè)順序(也就是反序,注意鏈表的邊界條件并考慮空鏈表)?

ANSWER 前面說了,最基本的是最重要的。線性數(shù)據(jù)結(jié)構(gòu)是學(xué)習(xí)數(shù)據(jù)結(jié)構(gòu)的入門,一定要掌握好。微軟的題目還是跟國內(nèi)的公司不一樣。國內(nèi)的一上來就是些概念,跟考?xì)v史一樣。

typedef struct listNode

{

         struct listNode* link;

         int data;

}node;

 

node* getNode(node* newNode,int val)

{

    if(!newNode)

                   exit(OVERFLOW);

         newNode->link = NULL;

         newNode->data = val;

         return newNode;

}

/*

  Insert a new node after p

*/

int insertNode(node* prev,node* newNode)

{

         if(!prev) return 0;

         newNode->link = prev->link;

         prev->link = newNode;

    return 1;

}

/*

 delete the node after the node prev

*/

int eraseNode(node*prev,node* p)

{

         if(p == NULL)

                   return 0;

         prev->link = p->link;

         free(p);

         return 1;

}

void buildList(node* head)

{

         int value;

         node* newNode = (node* ) malloc(sizeof(node));

         node* p = head;

         scanf("%d",&value);

         while(value != -1){

         newNode = getNode(newNode,value);

         insertNode(p,newNode);

         p = p->link;

         newNode = (node* ) malloc(sizeof(node));

         scanf("%d",&value);

         }

}

 

int reverseList(node* head)

{

         node* p = head->link;

         node* q = p->link;

         if(p == NULL){

         printf("The list is empty!\n");

         return 0;

         }

         while(q != NULL){

    node* newNode = (node* ) malloc(sizeof(node));

         newNode = getNode(newNode,q->data);

         insertNode(head,newNode);

         eraseNode(p,q);

         q = (node* ) malloc(sizeof(node)); // Allocate again

         q = p->link;

         }

         p->link = NULL;

      return 1;

}

http://blog.chinaunix.net/u2/76292/showart_1388527.html

posted on 2009-12-06 23:31 chatler 閱讀(804) 評(píng)論(1)  編輯 收藏 引用 所屬分類: Algorithm

FeedBack:
# re: 微軟面試中簡單的算法題目(轉(zhuǎn))
2009-12-06 23:33 | chatler
1.燒一根不均勻的繩子,從頭燒到尾總共需要 1 個(gè)小時(shí),問如何用燒繩子
的方法來確定半小時(shí)的時(shí)間呢?
2.10 個(gè)海盜搶到了100 顆寶石,每一顆都一樣大小且價(jià)值連城。他們決定
這么分:
(1)抽簽決定自己的號(hào)碼(1~10);
(2)首先,由1 號(hào)提出分配方案,然后大家表決,當(dāng)且僅當(dāng)超過半數(shù)的人
同意時(shí),按照他的方案進(jìn)行分配,否則將被扔進(jìn)大海喂鯊魚;
(3)如果1 號(hào)死后,再由2 號(hào)提出分配方案,然后剩下的4 個(gè)人進(jìn)行表決,
當(dāng)且僅當(dāng)超過半數(shù)的人同意時(shí),按照他的方案進(jìn)行分配,否則將被扔入大海喂鯊
魚;
(4)依此類推??
條件:每個(gè)海盜都是很聰明的人,都能很理智地做出判斷,從而做出選擇。
問題:第一個(gè)海盜提出怎樣的分配方案才能使自己的收益最大化?
3.為什么下水道的蓋子是圓的?
4.中國有多少輛汽車?
5.你讓工人為你工作7 天,回報(bào)是一根金條,這根金條平分成相連的7 段,
你必須在每天結(jié)束的時(shí)候給他們一段金條。如果只允許你兩次把金條弄斷,你如
何給你的工人付費(fèi)?
6.有一輛火車以每小時(shí)15 公里的速度離開北京直奔廣州,同時(shí)另一輛火車
以每小時(shí)20 公里的速度從廣州開往北京。如果有一只鳥,以30 公里每小時(shí)的速
度和兩輛火車同時(shí)啟動(dòng),從北京出發(fā),碰到另一輛車后就向相反的方向返回去飛,
就這樣依次在兩輛火車之間來回地飛,直到兩輛火車相遇。請(qǐng)問,這只鳥共飛行
了多長的距離?
7.你有兩個(gè)罐子以及50 個(gè)紅色彈球和50 個(gè)藍(lán)色彈球,隨機(jī)選出一個(gè)罐子,
隨機(jī)選出一個(gè)彈球放入罐子,怎樣給出紅色彈球最大的選中機(jī)會(huì)?在你的計(jì)劃
里,得到紅球的幾率是多少?
8.想像你站在鏡子前,請(qǐng)問,為什么鏡子中的影像可以左右顛倒,卻不能
上下顛倒呢?
9.如果你有無窮多的水,一個(gè)3 公升的提捅,一個(gè)5 公升的提捅,兩只提
捅形狀上下都不均勻,問你如何才能準(zhǔn)確稱出4 公升的水?
10.你有一桶果凍,其中有黃色、綠色、紅色三種,閉上眼睛抓取同種顏色
的兩個(gè)。抓取多少次就可以確定你肯定有兩個(gè)同一顏色的果凍?
11.連續(xù)整數(shù)之和為1000 的共有幾組?
12.從同一地點(diǎn)出發(fā)的相同型號(hào)的飛機(jī),可是每架飛機(jī)裝滿油只能繞地球飛
半周,飛機(jī)之間可以加油,加完油的飛機(jī)必須回到起點(diǎn)。問至少要多少架次,才
能滿足有一架繞地球一周。
參考答案:
1.兩邊一起燒。
2.96,0,1,0,1,0,1,0,1,0。
3.因?yàn)榭谑菆A的。
4.很多。
5.分1,2,4。
6.6/7 北京到廣州的距離。
7.100%。
8.平面鏡成像原理(或者是“眼睛是左右長的”)。
9.3 先裝滿,倒在5 里,再把3 裝滿,倒進(jìn)5 里。把5 里的水倒掉,把3 里
剩下的水倒進(jìn)5 里,再把3 裝滿,倒進(jìn)5 里,ok!
10.一次。
11.首先1000 為一個(gè)解。連續(xù)數(shù)的平均值設(shè)為x,1000 必須是x 的整數(shù)倍。
假如連續(xù)數(shù)的個(gè)數(shù)為偶數(shù)個(gè),x 就不是整數(shù)了。x 的2 倍只能是5,25,125 才行。
因?yàn)槠骄禐?2.5,要連續(xù)80 個(gè)達(dá)不到。125/2=62.5 是可以的。即62,63,61,
64,等等。連續(xù)數(shù)的個(gè)數(shù)為奇數(shù)時(shí),平均值為整數(shù)。1000 為平均值的奇數(shù)倍。
1000=2×2×2×5×5×5;x 可以為2,4,8,40,200 排除后剩下40 和200 是
可以的。所以答案為平均值為62.5,40,200,1000 的4 組整數(shù)。
12.答案是5 架次。一般的解法可以分為如下兩個(gè)部分:
(1)直線飛行
一架飛機(jī)載滿油飛行距離為1,n 架飛機(jī)最遠(yuǎn)能飛多遠(yuǎn)?在不是兜圈沒有迎
頭接應(yīng)的情況,這問題就是n 架飛機(jī)能飛多遠(yuǎn)?存在的極值問題是不要重復(fù)飛
行,比如兩架飛機(jī)同時(shí)給一架飛機(jī)加油且同時(shí)飛回來即可認(rèn)為是重復(fù),或者換句
話說,離出發(fā)點(diǎn)越遠(yuǎn),在飛的飛機(jī)就越少,這個(gè)極值條件是顯然的,因?yàn)閚 架飛
機(jī)帶的油是一定的,如重復(fù),則浪費(fèi)的油就越多。比如最后肯定是只有一架飛機(jī)
全程飛行,注意“全程”這兩個(gè)字,也就是不要重復(fù)的極值條件。如果是兩架飛
機(jī)的話,肯定是一架給另一架加滿油,并使剩下的油剛好能回去,就說第二架飛
機(jī)帶的油耗在3 倍于從出發(fā)到加油的路程上,有三架飛機(jī)第三架帶的油耗在5
倍于從出發(fā)到其加油的路程上,所以n 架飛機(jī)最遠(yuǎn)能飛行的距離為s=1+1/3+?
+1/(2n+1)這個(gè)級(jí)數(shù)是發(fā)散的,所以理論上只要飛機(jī)足夠多最終可以使一架飛
機(jī)飛到無窮遠(yuǎn),當(dāng)然實(shí)際上不可能一架飛機(jī)在飛行1/(2n+1)時(shí)間內(nèi)同時(shí)給n?1
個(gè)飛機(jī)加油。
(2)可以迎頭接應(yīng)加油
一架飛機(jī)載滿油飛行距離為1/2,最少幾架飛機(jī)能飛行距離1?也是根據(jù)不
要重復(fù)飛行的極值條件,得出最遠(yuǎn)處肯定是只有一架飛機(jī)飛行,這樣得出由1/2
處對(duì)稱兩邊1/4 肯定是一架飛機(jī)飛行,用上面的公式即可知道一邊至少需要兩架
飛機(jī)支持,(1/3+1/5)/2>1/4(左邊除以2 是一架飛機(jī)飛行距離為1/2),但
是有一點(diǎn)點(diǎn)剩余,所以想像為一個(gè)滑輪(中間一個(gè)飛機(jī)是個(gè)繩子,兩邊兩架飛機(jī)
是個(gè)棒)的話,可以滑動(dòng)一點(diǎn)距離,就說加油地點(diǎn)可以在一定距離內(nèi)變動(dòng)(很容
易算出來每架飛機(jī)的加油地點(diǎn)和加油數(shù)量,等等)  回復(fù)  更多評(píng)論
  
<2009年5月>
262728293012
3456789
10111213141516
17181920212223
24252627282930
31123456

常用鏈接

留言簿(10)

隨筆分類(307)

隨筆檔案(297)

algorithm

Books_Free_Online

C++

database

Linux

Linux shell

linux socket

misce

  • cloudward
  • 感覺這個(gè)博客還是不錯(cuò),雖然做的東西和我不大相關(guān),覺得看看還是有好處的

network

OSS

  • Google Android
  • Android is a software stack for mobile devices that includes an operating system, middleware and key applications. This early look at the Android SDK provides the tools and APIs necessary to begin developing applications on the Android platform using the Java programming language.
  • os161 file list

overall

搜索

  •  

最新評(píng)論

閱讀排行榜

評(píng)論排行榜

青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            欧美激情一区二区三区在线| 欧美高清你懂得| 国产欧美一区二区三区沐欲| 亚洲欧美电影在线观看| 欧美自拍丝袜亚洲| 一区二区三区在线高清| 欧美1区视频| 99亚洲精品| 久久久高清一区二区三区| 在线观看的日韩av| 欧美精品免费视频| 亚洲性夜色噜噜噜7777| 麻豆精品视频在线观看视频| 亚洲日本久久| 国产精品区二区三区日本| 欧美伊人久久久久久久久影院| 欧美成人日韩| 亚洲愉拍自拍另类高清精品| 国产资源精品在线观看| 欧美激情91| 欧美一区二区成人6969| 亚洲国产综合在线| 亚洲欧美在线免费| 91久久精品日日躁夜夜躁国产| 欧美日韩美女在线观看| 性刺激综合网| 亚洲精品一区二区三区在线观看 | 亚洲一区二区三区四区中文| 国产欧美亚洲一区| 欧美高清视频在线| 新狼窝色av性久久久久久| 亚洲经典在线| 久久久成人精品| 亚洲图色在线| 亚洲日本一区二区三区| 国产乱码精品一区二区三区不卡| 欧美成黄导航| 久久精品国产v日韩v亚洲| 99精品国产高清一区二区| 欧美 日韩 国产在线| 性视频1819p久久| 一本色道久久99精品综合 | 男女精品网站| 久久www成人_看片免费不卡| 制服丝袜激情欧洲亚洲| 亚洲国产精品第一区二区三区| 国产乱肥老妇国产一区二| 欧美日本视频在线| 欧美11—12娇小xxxx| 久久久久久久久久久久久久一区 | 国产精品一区在线观看你懂的| 欧美国产日韩一二三区| 久久久精品视频成人| 亚洲欧美影院| 亚洲一区二区三区乱码aⅴ| 亚洲欧洲在线看| 亚洲国产精品日韩| 欧美www视频| 老牛影视一区二区三区| 久久人人爽国产| 久久久久久97三级| 欧美在线亚洲在线| 欧美一区二区视频免费观看| 亚洲一区二区在线视频| 一区二区日韩伦理片| 日韩亚洲精品在线| 日韩一区二区电影网| 亚洲精品欧美日韩专区| 亚洲精品中文字幕女同| 亚洲精品偷拍| avtt综合网| 亚洲视频在线观看视频| 亚洲桃花岛网站| 亚洲一区精品在线| 亚洲欧美国产视频| 欧美在线观看日本一区| 久久aⅴ国产紧身牛仔裤| 午夜精品福利视频| 欧美一区二区视频观看视频| 欧美亚洲一区三区| 欧美一区久久| 久久夜色精品国产亚洲aⅴ | 欧美精品乱人伦久久久久久| 欧美激情一区在线观看| 欧美日韩p片| 国产精品女人久久久久久| 国产乱人伦精品一区二区 | 亚洲一区二区三区精品视频| 亚洲一区二区少妇| 午夜精品视频在线| 久久精品亚洲一区| 欧美成人精品1314www| 欧美激情久久久久| 欧美性猛交xxxx免费看久久久| 国产精品午夜电影| 一区二区三区在线视频观看| 亚洲日本视频| 亚洲自拍偷拍视频| 久久久免费精品视频| 欧美激情bt| 日韩一级二级三级| 欧美一区影院| 欧美精品成人一区二区在线观看 | 亚洲综合欧美日韩| 久久九九国产精品| 亚洲国产一区二区精品专区| 亚洲天堂成人在线视频| 久久久国产成人精品| 欧美精品一区三区在线观看| 国产精品视频观看| 亚洲国产美女| 小黄鸭精品密入口导航| 麻豆久久精品| 在线综合+亚洲+欧美中文字幕| 久久成年人视频| 欧美日韩天堂| 在线观看成人小视频| 亚洲欧美另类在线| 欧美搞黄网站| 亚洲自拍电影| 欧美日韩高清在线观看| 国模私拍一区二区三区| 亚洲午夜视频在线| 男人的天堂亚洲在线| 亚洲综合三区| 欧美日韩aaaaa| 亚洲成人在线观看视频| 欧美一区二区免费观在线| 亚洲激情视频在线播放| 欧美一区国产二区| 欧美性jizz18性欧美| 亚洲国产精品久久久久久女王 | 久久综合狠狠综合久久综青草| 亚洲精品一区二区三区av| 久久国产黑丝| 国产精一区二区三区| 亚洲社区在线观看| 亚洲电影免费观看高清完整版在线| 午夜视频久久久| 国产精品va在线播放| 亚洲毛片在线看| 女女同性精品视频| 久久精品日韩| 国内自拍一区| 小黄鸭精品aⅴ导航网站入口| 亚洲精品久久在线| 欧美/亚洲一区| 亚洲高清久久| 农夫在线精品视频免费观看| 欧美一区二区三区的| 国产毛片一区二区| 午夜精品视频一区| 亚洲午夜一区二区三区| 欧美午夜在线| 亚洲一区二区精品| 一区二区三区视频在线观看| 欧美日韩黄色一区二区| 日韩一级大片| 亚洲精品一区在线观看香蕉| 欧美福利专区| 日韩视频―中文字幕| 亚洲国产成人精品女人久久久 | 免费在线看一区| 久久天天狠狠| 亚洲国产三级在线| 91久久一区二区| 欧美日韩极品在线观看一区| 宅男噜噜噜66一区二区| 一区二区三区欧美亚洲| 国产精品久久久久久久一区探花 | 久久久久久自在自线| 欧美一区深夜视频| 激情av一区二区| 欧美激情国产日韩| 欧美激情2020午夜免费观看| 宅男噜噜噜66国产日韩在线观看| 亚洲伦伦在线| 国产精品私拍pans大尺度在线 | 毛片一区二区三区| 老司机67194精品线观看| 亚洲精品色婷婷福利天堂| 亚洲精品国精品久久99热| 欧美无砖砖区免费| 欧美中文日韩| 美女精品视频一区| 一区二区欧美在线| 亚洲女同精品视频| 在线观看亚洲一区| 亚洲精品乱码视频| 国产欧美精品国产国产专区| 久久久久一区二区三区| 欧美成人精品在线| 午夜精品福利一区二区三区av | 久久爱91午夜羞羞| 亚洲激情电影在线| 一区二区三区日韩在线观看| 国产一区二区三区高清| 亚洲国产精品高清久久久| 欧美午夜一区二区三区免费大片| 久久九九免费|