騰訊面試題

請將答卷、作品及簡歷壓縮後傳送到:[email protected] 信箱,投遞作品請在主題標明:職位+地區+學校+姓名,如:用戶研究+北京+北京大學+張三

  一、 耐心填一填!(每空4分,共24分)

  1. 為div設定類a與b,應編寫html代碼_<div class=”a b”>_</div>_________。

  2. 設定css屬性clear的值為_both___________時可清除左右兩邊浮動。

  3.  ____li________標籤必須直接嵌套於ul、ol中。

  4. css屬性_____margin_______可為元素設定外補丁。

  5. 設定css屬性float的值為___none_________時可取消元素的浮動。

  6. 文字居中的css代碼是____text-align:center________。

  二、 精心選一選!(每題4分,共16分)

  1. 下列哪個樣式定義後,內聯(非塊狀)元素可以定義寬度和高度( c  )

  a. display:inline  b. display:none c. display:block  d. display:inheric

  2. 選出你認為最合理的定義標題的方法( c  )

  a. <span class=”heading”>文章標題</span>

  b. <p><b>文章標題</b></p>

  c. <h1>文章標題</h1>

  d. <strong>文章標題</strong>

  3. br標籤在xhtml中語義為( a  )

  a.換行  b.強調  c.段落  d.標題

  4. 不換行必須設定(  a  )

  a.word-break  b.letter-spacing  c.white-space d.word-spacing

  5. 在使用table表現數據時,有時候表現出來的會比自己實際設定的寬度要寬,為此需要設定下面哪些屬性值(  ad )

  a. cellpadding=”0′  b. padding:0  c. margin:0 d. cellspacing=”0′

  三、判斷對或錯!(每題4分,共24分)

  1. css屬性font-style 用於設定字型的粗細。 (  × )

  2. css屬性overflow用於設定元素超過寬度時是否隱藏或顯示滾動條。 ( √  )

  3. 在不涉及樣式情況下,頁面元素的優先顯示與結構擺放順序無關。  ( ×  )

  4. 在不涉及樣式情況下,頁面元素的優先顯示與標籤選用無關。 ( √  )

  四、一個檔案中有40億個整數,每個整數為四個位元組,記憶體為1gb,寫出一個算法:求出這個檔案里的整數里不包含的一個整數。下面的代碼片段僅僅是一個樣例。

  4個位元組的整數最大可表示為2^32=4294967296, 一個數一個數的讀入記憶體,建立一個bit map,共需要4294967296個bits(也就是0.5g位元組的記憶體,並沒有超過1g記憶體的限制),讀入每一個數,置相應的bit為1。

  1 int n = 20; // # of number

  2 int m = 1000; // number range

  3 std::vector<int> a(n);  // can be imported from external file number by number

  4 for (int i = 0; i < n; i++)

  5 a[i] = (int)rand()%m;

  6 std::copy(a.begin(), a.end(), std::ostream_iterator<int>(std::cout, " "));

  7 std::cout << "\n";

  8 // bit map setup for existence of each number

  9 unsigned int nbytes = m%8 ? (m/8+1) : (m/8);

  10 std::cout << "nbytes = " << nbytes << "\n";

  11

  12 char* p = new char [nbytes];

  13 memset(p, 0, sizeof(char)*nbytes);

  14

  15 for (int i = 0; i < n; i++) {

  16 unsigned int index = a[i]/8;

  17 unsigned int bitpos = a[i]%8;

  18 char* tmp = p+index;

  19 *tmp |= 1 << bitpos;

  20 //std::cout << "bit pos set to 1 : " << 8*index+bitpos << "\n";

  21 }

  22 for (int i = nbytes-1; i >= 0; i--) {

  23 printf("%02x ", (char)*(p+i)&0xff);

  24 }

  25 std::cout << "\n";

  26 delete [] p;