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

    福建星網銳捷校園招聘筆試題

    時間:2023-04-04 07:59:18 筆試題目 我要投稿
    • 相關推薦

    2014福建星網銳捷校園招聘筆試題

      去星網銳捷筆試,考了很多內容:有c語言的相關知識,網絡IP,線性表等。后面有四道大題,共60分,分值很高吧!

    2014福建星網銳捷校園招聘筆試題

      順便說一下,我報的是軟件研發,當時說包括c、c++和java.可拿到試卷才知道全是c,由于對java比較熟悉,用java實現后面的四道大題。具體的c函數表示和原題已經記不清了,只能說說題目的大意。

      以下代碼在IDE里面可以直接運行,并輸出相應結果。

      1.編程實現楊輝三角的前十行(10分):

      public class Test4 {

      private static void getLines(int i){

      int[][] yh=new int[i][i];

      //給所有端點賦值為1

      for(int n=0;n

      yh[n][0]=1;

      yh[n][n]=1;

      }

      //給除了端點元素的其它元素賦值,把yh[n][m]看成是組合c(n,m),n、m分別為下標和上標

      for(int n=2;n

      for(int m=1;m

      //該公式為楊輝三角的特性之一

      yh[n][m]=yh[n-1][m]+yh[n-1][m-1];

      }

      }

      //輸出整個楊輝三角

      for(int k=0;k

      for(int l=0;l<=k;l++){

      System.out.print(yh[k][l]+" ");

      }

      System.out.println();

      }

      }

      public static void main(String[] args){

      int i=10;

      getLines(i);

      }

      }

      public class Test4 {

      private static void getLines(int i){

      int[][] yh=new int[i][i];

      //給所有端點賦值為1

      for(int n=0;n

      yh[n][0]=1;

      yh[n][n]=1;

      }

      //給除了端點元素的其它元素賦值,把yh[n][m]看成是組合c(n,m),n、m分別為下標和上標

      for(int n=2;n

      for(int m=1;m

      //該公式為楊輝三角的特性之一

      yh[n][m]=yh[n-1][m]+yh[n-1][m-1];

      }

      }

      //輸出整個楊輝三角

      for(int k=0;k

      for(int l=0;l<=k;l++){

      System.out.print(yh[k][l]+" ");

      }

      System.out.println();

      }

      }

      public static void main(String[] args){

      int i=10;

      getLines(i);

      }

      }

      輸出:

      1

      1 1

      1 2 1

      1 3 3 1

      1 4 6 4 1

      1 5 10 10 5 1

      1 6 15 20 15 6 1

      1 7 21 35 35 21 7 1

      1 8 28 56 70 56 28 8 1

      1 9 36 84 126 126 84 36 9 1

      2.一元錢買一瓶啤酒,兩個空瓶換一瓶啤酒.問n元錢能喝多少瓶啤酒?用遞歸實現。(15分)

      public class Test2 {

      private static int getNumberOfBeer(int n){

      if(n==1){

      return 1;

      }else if(n>=2&&n%2==0){

      return n+getNumberOfBeer(n/2);

      //奇數元錢需要加1

      }else if(n>=2&&n%2!=0){

      return n+1+getNumberOfBeer(n/2);

      }

      return -1;

      }

      public static void main(String[] args){

      int i4=getNumberOfBeer(4);

      int i5=getNumberOfBeer(5);

      System.out.println(i4);

      System.out.println(i5);

      }

      }

      public class Test2 {

      private static int getNumberOfBeer(int n){

      if(n==1){

      return 1;

      }else if(n>=2&&n%2==0){

      return n+getNumberOfBeer(n/2);

      //奇數元錢需要加1

      }else if(n>=2&&n%2!=0){

      return n+1+getNumberOfBeer(n/2);

      }

      return -1;

      }

      public static void main(String[] args){

      int i4=getNumberOfBeer(4);

      int i5=getNumberOfBeer(5);

      System.out.println(i4);

      System.out.println(i5);

      }

      }

      輸出:

      7

      9

      3.對一個數組進行冒泡的升序排列。(15分)

      public class bubbleSort {

      private static void Sort(int[] data){

      for(int i=0;i

      for(int j=0;j

      if(data[j]>data[j+1]){

      int tmp=data[j];

      data[j]=data[j+1];

      data[j+1]=tmp;

      }

      }

      }

      }

      public static void main(String[] args){

      int[] a=new int[]{1,2,5,3,9,8,7,22,-1,-3};

      Sort(a);

      for(int i=0;i

      System.out.print(a[i]+" ");

      }

      }

      }

      public class bubbleSort {

      private static void Sort(int[] data){

      for(int i=0;i

      for(int j=0;j

      if(data[j]>data[j+1]){

      int tmp=data[j];

      data[j]=data[j+1];

      data[j+1]=tmp;

      }

      }

      }

      }

      public static void main(String[] args){

      int[] a=new int[]{1,2,5,3,9,8,7,22,-1,-3};

      Sort(a);

      for(int i=0;i

      System.out.print(a[i]+" ");

      }

      }

      }

      輸出:

      -3 -1 1 2 3 5 7 8 9 22

      4.從1000000個數里面選出100個最大的數,用堆排序實現。(20分)

      public class HeapSort_max {

      //Sort的參數表與題目中所給c函數的參數表一致。t是數組中獲得的前t個最大數

      private static void Sort(int[] data,int n,int t){

      n=data.length;

      for(int i=0;i

      buildMaxHeap(data,n-1-i);

      swap(data,0,n-1-i);

      }

      }

      //對兩數進行交換

      private static void swap(int[] data,int i,int j){

      int tmp=data[i];

      data[i]=data[j];

      data[j]=tmp;

      }

      //建堆的實現

      private static void buildMaxHeap(int[] data,int lastIndex){

      for(int i=(lastIndex-1)/2;i>=0;i--){

      int k=i;

      while(2*k+1<=lastIndex){

      int biggerIndex=2*k+1;

      if(biggerIndex

      if(data[biggerIndex]

      biggerIndex++;

      }

      }

      if(data[k]

      swap(data,k,biggerIndex);

      k=biggerIndex;

      }else{

      break;

      }

      }

      }

      }

      public static void main(String[] args){

      int[] a=new int[]{1,5,8,7,-3,50,-8,0,11,21,23,18,80,30};

      int n=a.length;

      int j=6;//當數組有1000000個數,且j=100時即可輸出前100個最大數

      Sort(a,n,j);

      for(int i=n-1;i>n-1-j;i--){

      System.out.print(a[i]+" ");

      }

      }

      }

      public class HeapSort_max {

      //Sort的參數表與題目中所給c函數的參數表一致。t是數組中獲得的前t個最大數

      private static void Sort(int[] data,int n,int t){

      n=data.length;

      for(int i=0;i

      buildMaxHeap(data,n-1-i);

      swap(data,0,n-1-i);

      }

      }

      //對兩數進行交換

      private static void swap(int[] data,int i,int j){

      int tmp=data[i];

      data[i]=data[j];

      data[j]=tmp;

      }

      //建堆的實現

      private static void buildMaxHeap(int[] data,int lastIndex){

      for(int i=(lastIndex-1)/2;i>=0;i--){

      int k=i;

      while(2*k+1<=lastIndex){

      int biggerIndex=2*k+1;

      if(biggerIndex

      if(data[biggerIndex]

      biggerIndex++;

      }

      }

      if(data[k]

      swap(data,k,biggerIndex);

      k=biggerIndex;

      }else{

      break;

      }

      }

      }

      }

      public static void main(String[] args){

      int[] a=new int[]{1,5,8,7,-3,50,-8,0,11,21,23,18,80,30};

      int n=a.length;

      int j=6;//當數組有1000000個數,且j=100時即可輸出前100個最大數

      Sort(a,n,j);

      for(int i=n-1;i>n-1-j;i--){

      System.out.print(a[i]+" ");

      }

      }

      }

      輸出:

      80 50 30 23 21 18

      看了以上題,是不是很簡單啊?當參加了很多公司的筆試,從試題的難易層度,你就知道各個公司之間的層次了。Good luck!

    【福建星網銳捷校園招聘筆試題】相關文章:

    星網銳捷筆試題目12-12

    星網銳捷面試07-06

    銳捷星網面試07-31

    星網銳捷面試07-31

    星網銳捷硬件開發的筆試題目11-21

    星網銳捷面試經驗11-28

    2012星網銳捷筆試11-19

    星網銳捷面試--硬件篇08-08

    銳捷筆試題03-24

    銳捷筆試題07-31

    日韩激情