中文一二三区_九九在线中文字幕无码_国产一二区av_38激情网_欧美一区=区三区_亚洲高清免费观看在线视频

首頁(yè) > 個(gè)人簡(jiǎn)歷 > 求職簡(jiǎn)歷 > 筆試題目 > C筆試題算法

C筆試題算法

發(fā)布時(shí)間:2021-03-07

C筆試題算法

  C語(yǔ)言能直接訪問(wèn)硬件的物理地址,能進(jìn)行位(bit)操作。兼有高級(jí)語(yǔ)言和低級(jí)語(yǔ)言的許多優(yōu)點(diǎn)。下面就由第一范文網(wǎng)小編為大家介紹一下C筆試題算法的文章,歡迎閱讀。

  C筆試題算法篇1

  冒泡法:

  這是最原始,也是眾所周知的最慢的算法了。他的名字的由來(lái)因?yàn)樗墓ぷ骺磥?lái)象是冒泡: #include

  void BubbleSort(int* pData,int Count)

  {

  int iTemp;

  for(int i=1;i

  {

  for(int j=Count-1;j>=i;j--)

  {

  if(pData[j]

  {

  iTemp = pData[j-1];

  pData[j-1] = pData[j];

  pData[j] = iTemp;

  }

  }

  }

  }

  void main

  {

  int data = {10,9,8,7,6,5,4};

  BubbleSort(data,7);

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

  cout<

  }

  倒序

  第一輪:10,9,8,7->10,9,7,8->10,7,9,8->7,10,9,8(交換3次)

  第二輪:7,10,9,8->7,10,8,9->7,8,10,9(交換2次)

  第一輪:7,8,10,9->7,8,9,10(交換1次)

  循環(huán)次數(shù):6次

  交換次數(shù):6次

  其他:

  第一輪:8,10,7,9->8,10,7,9->8,7,10,9->7,8,10,9(交換2次)

  第二輪:7,8,10,9->7,8,10,9->7,8,10,9(交換0次)

  第一輪:7,8,10,9->7,8,9,10(交換1次)

  循環(huán)次數(shù):6次

  交換次數(shù):3次

  上面我們給出了程序段,現(xiàn)在我們分析它:這里,影響我們算法性能的主要部分是循環(huán)和交換,顯然,次數(shù)越多,性能就越差。從上面的程序我們可以看出循環(huán)的次數(shù)是固定的,為1+2+...+n-1。 寫成公式就是1/2*(n-1)*n。

  現(xiàn)在注意,我們給出O方法的定義:

  若存在一常量K和起點(diǎn)n0,使當(dāng)n>=n0時(shí),有f(n)<=K*g(n),則f(n) = O(g(n))。(呵呵,不要說(shuō)沒(méi)學(xué)好數(shù)學(xué)呀,對(duì)于編程數(shù)學(xué)是非常重要的!!!)

  現(xiàn)在我們來(lái)看1/2*(n-1)*n,當(dāng)K=1/2,n0=1,g(n)=n*n時(shí),1/2*(n-1)*n<=1/2*n*n=K*g(n)。所以(n)=O(g(n))=O(n*n)。所以我們程序循環(huán)的復(fù)雜度為O(n*n)。

  再看交換。從程序后面所跟的表可以看到,兩種情況的循環(huán)相同,交換不同。其實(shí)交換本身同數(shù)據(jù)源的有序程度有極大的關(guān)系,當(dāng)數(shù)據(jù)處于倒序的情況時(shí),交換次數(shù)同循環(huán)一樣(每次循環(huán)判斷都會(huì)交換),復(fù)雜度為O(n*n)。當(dāng)數(shù)據(jù)為正序,將不會(huì)有交換。復(fù)雜度為O(0)。亂序時(shí)處于中間狀態(tài)。正是由于這樣的原因,我們通常都是通過(guò)循環(huán)次數(shù)來(lái)對(duì)比算法。

  C筆試題算法篇2

  交換法:

  交換法的程序最清晰簡(jiǎn)單,每次用當(dāng)前的元素一一的同其后的元素比較并交換。

  #include

  void ExchangeSort(int* pData,int Count)

  {

  int iTemp;

  for(int i=0;i

  {

  for(int j=i+1;j

  {

  if(pData[j]

  {

  iTemp = pData[i];

  pData[i] = pData[j];

  pData[j] = iTemp;

  }

  }

  }

  }

  void main

  {

  int data = {10,9,8,7,6,5,4};

  ExchangeSort(data,7);

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

  cout<

  }

  倒序

  第一輪:10,9,8,7->9,10,8,7->8,10,9,7->7,10,9,8(交換3次)

  第二輪:7,10,9,8->7,9,10,8->7,8,10,9(交換2次)

  第一輪:7,8,10,9->7,8,9,10(交換1次)

  循環(huán)次數(shù):6次

  交換次數(shù):6次

  其他:

  第一輪:8,10,7,9->8,10,7,9->7,10,8,9->7,10,8,9(交換1次)

  第二輪:7,10,8,9->7,8,10,9->7,8,10,9(交換1次)

  第一輪:7,8,10,9->7,8,9,10(交換1次)

  循環(huán)次數(shù):6次

  交換次數(shù):3次

  從運(yùn)行的表格來(lái)看,交換幾乎和冒泡一樣糟。事實(shí)確實(shí)如此。循環(huán)次數(shù)和冒泡一樣也是1/2*(n-1)*n,所以算法的復(fù)雜度仍然是O(n*n)。由于我們無(wú)法給出所有的情況,所以只能直接告訴大家他們?cè)诮粨Q上面也是一樣的糟糕(在某些情況下稍好,在某些情況下稍差)。

  C筆試題算法篇3

  選擇法:

  現(xiàn)在我們終于可以看到一點(diǎn)希望:選擇法,這種方法提高了一點(diǎn)性能(某些情況下)

  這種方法類似我們?nèi)藶榈呐判蛄?xí)慣:從數(shù)據(jù)中選擇最小的同第一個(gè)值交換,在從省下的部分中選擇最小的與第二個(gè)交換,這樣往復(fù)下去。

  #include

  void SelectSort(int* pData,int Count)

  {

  int iTemp;

  int iPos;

  for(int i=0;i

  {

  iTemp = pData[i];

  iPos = i;

  for(int j=i+1;j

  {

  if(pData[j]

  {

  iTemp = pData[j];

  iPos = j;

  }

  }

  pData[iPos] = pData[i];

  pData[i] = iTemp;

  }

  }

  void main

  {

  int data = {10,9,8,7,6,5,4};

  SelectSort(data,7);

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

  cout<

  }

  倒序(最糟情況)

  第一輪:10,9,8,7->(iTemp=9)10,9,8,7->(iTemp=8)10,9,8,7->(iTemp=7)7,9,8,10(交換1次) 第二輪:7,9,8,10->7,9,8,10(iTemp=8)->(iTemp=8)7,8,9,10(交換1次)

  第一輪:7,8,9,10->(iTemp=9)7,8,9,10(交換0次)

  循環(huán)次數(shù):6次

  交換次數(shù):2次

  其他:

  第一輪:8,10,7,9->(iTemp=8)8,10,7,9->(iTemp=7)8,10,7,9->(iTemp=7)7,10,8,9(交換1次) 第二輪:7,10,8,9->(iTemp=8)7,10,8,9->(iTemp=8)7,8,10,9(交換1次)

  第一輪:7,8,10,9->(iTemp=9)7,8,9,10(交換1次)

  循環(huán)次數(shù):6次

  交換次數(shù):3次

  遺憾的是算法需要的循環(huán)次數(shù)依然是1/2*(n-1)*n。所以算法復(fù)雜度為O(n*n)。

  我們來(lái)看他的交換。由于每次外層循環(huán)只產(chǎn)生一次交換(只有一個(gè)最小值)。所以f(n)<=n 所以我們有f(n)=O(n)。

  所以,在數(shù)據(jù)較亂的時(shí)候,可以減少一定的交換次數(shù)。

主站蜘蛛池模板: 亚洲日产色情偷拍 | 妓院一钑片免看黄大片 | 亚洲国产精品成人久久久软件 | 亚洲免费视频免在线观看 | 好男人社区神马WWW在线影视 | 成人无码做爰www免费软件小说 | 日本亚洲精品一区二区三 | 亚洲欧洲无卡二区视頻 | 国产做a爰片久久毛片a片 | 天天爽夜夜爽人人爽从早干到睌 | 精品无人区麻豆乱码无限制 | 亚洲精品欧美综合二区 | 无套内谢的新婚少妇国语播放 | 亚洲一区影院 | 亚洲欧美日本国产专区一区 | 亚洲欧美成人一区二区 | 131MM少妇做爰视频 | 国产日产一区二区三区久久久久久 | 日本午夜网站 | 婷婷视频导航 | 成人欧美magnet | 色久综合网精品一区二区 | 黄瓜视频入口永久免费观看 | 亚洲一区二区网址 | 最近中文字幕日本 | 国产在线观看精品一区二区三区 | 另类校园春色小说综合网 | 2021久久最新国产精品 | 亚洲无人区码一码二码三码的含义 | 不卡毛片在线看 | 亚洲精品推荐 | 精品国产乱码久久久 | 成年人观看免费视频 | 九九在线精品视频 | 四季av一区二区三区免费观看 | 中国CHAIN同志GAY片国产 | 亚洲精品无码久久一线 | 国产精品扒开腿做爽爽爽日本无码 | 国产区图片区小说区亚洲区 | 久久久G0G0午夜无码精品 | 91精品一区二区三区蜜桃 |