• <nav id="cwumo"><code id="cwumo"></code></nav>
  • <menu id="cwumo"><strong id="cwumo"></strong></menu>

    華為筆試經驗分享(2)

    時間:2022-12-12 00:39:46 筆試經驗 我要投稿
    • 相關推薦

    華為筆試經驗分享(2)

      篇中提及的問題的解答:

    華為筆試經驗分享(2)

      1、1到100之間的所有素數之和;

      int i = 1;

      int j = 0;

      bool change= 1;

      int sum = 0;

      for (i=1; i<100; i++)

      {

      for (j=2; j

      {

      if(i%j==0)

      {

      change = 0;

      break;

      }

      }

      if(change==1)

      sum +=i;

      change = 1;

      }

      printf("%d\n",sum);

      2、隊列的實現;(用數組或者鏈表,定義好輸入和輸出即可)

      3、選首領(有一群人圍在一圈,從第一個人開始數1、2、3,數到3者退出,用循環鏈表實現)

      n個人圍成一圈,從第一個人開始依次從1到m循環報數,當報到m的時候此人出圈,直到圈 中只剩一人為止.求最后一個人的原始編號。

      int yuesefu(int n,int m)

      {

      int i,r=0;

      for (i=2;i<=n;i++) r=(r+m)%i;

      return r+1;

      }

      4、字符串匹配問題(int countABC(* s) 輸入任何一串字符串,計算機其中有連續ABC子字符 串的個數)

      int countABC(* s)

      {

      int i = 0;

      int j = 0;

      int num = 0;

      scanf("%s",s);

      int len = strlen(s);

      for (i=0; i

      {

      j = strcmp(s+i,"ABC");

      if(j==0)

      num++;

      }

      }

      5、用數組存儲超大數的問題。

      這是數組得一個應用,思想是我們定義一個數組,讓每一個元素得值都是從后到前以十 進制得方式存貯得,如過到了9下一位就要讓前一個元素進位為1,9變為0同時。

      下面這個例子是要求一個40位的 n!的值

      int data[40];//存儲40位書的整數數組

      int digit;//數據位數變量

      int i,j,r,k;

      int n;//用戶輸入值

      for(i=1; i<40+1; i++)

      data[i]=0;

      data[0]=data[1]=1;

      digit=1;

      printf("enter a number :");

      scanf("%d",n);

      for(i=1; i

      {

      for(j=1; j

      data[j]*=i;

      for(j=1; j

      {

      if(data[j]>10)

      {

      for(r=1; r

      {

      if(data[digit]>10)//大于10時候位數加1

      digit++;

      data[r+1]+=data[r]/10;//進位增加

      data[r]=data[r]%10;//去掉進位后得值

      }

      }

      }

      printf("%d! = ",i);

      for(k =digit; k>0; k--)

      printf("%d",data[k]);

      printf("\n");

      }

      6、詢問我操作系統的進程和線程的區別

      進程和線程都是由操作系統所體會的程序運行的基本單元,系統利用該基本單元 實現系統對應用的并發性。進程和線程的區別,簡而言之:

      一個程序至少有一個進程,一個進程至少有一個線程.

      線程的劃分尺度小于進程,使得多線程程序的并發性高。

      另外,進程在執行過程中擁有獨立的內存單元,而多個線程共享內存,從而極大 地提高了程序的運行效率。

      =========================================

      1、ping命令使用的是哪種報文?

      PING命令使用ICMP的哪種code類型:Echo reply(回顯請求報文)

      2、OSI分哪幾個層,IP是在哪個層?

      osi:物理層、鏈路層、網絡層、傳輸層、會話層、管理層、應用層。

      tcp/ip:主機網絡層、互聯層、傳輸層、應用層。ip是在互聯層

      3、哈希表的問題

      主要用于快速查找檢索方面

      4、為什么要采取二叉樹這種數據結構?

      他折半查找,可以減少查找比較次數

      5、五元組

      二元組的定義:

      三元組的定義:

      五元組的定義:

      V是值的集合,O是操作的集合,G是構成名字的文法,M是存儲的集合,S是從G能構成的名字 幾個到M的映射.

      iP報文中的五元組(即源IP地址,源端口號,目的IP地址,目的端口,協議)。

      半相關

      綜上所述,網絡中用一個三元組可以在全局唯一標志一個進程:

      (協議,本地地址,本地端口號)

      這樣一個三元組,叫做一個半相關(half-association),它指定連接的每半部分。

    【華為筆試經驗分享(2)】相關文章:

    奧美筆試經驗分享07-31

    NHN筆試經驗分享08-09

    Numerica的筆試經驗分享08-10

    亞馬遜筆試經驗分享07-07

    麥肯錫筆試經驗分享07-11

    2014華為江西財經筆試經驗07-07

    公考筆試經驗分享03-19

    移動筆試經驗分享11-02

    齊魯銀行筆試內容,筆試經驗分享04-16

    飛亞達筆試 經驗分享08-09

    日韩激情