久久久精品一区ed2k-女人被男人叉到高潮的视频-中文字幕乱码一区久久麻豆樱花-俄罗斯熟妇真实视频

如何利用C#計(jì)算素?cái)?shù)序列

這篇文章主要介紹“如何利用C#計(jì)算素?cái)?shù)序列”,在日常操作中,相信很多人在如何利用C#計(jì)算素?cái)?shù)序列問題上存在疑惑,小編查閱了各式資料,整理出簡(jiǎn)單好用的操作方法,希望對(duì)大家解答”如何利用C#計(jì)算素?cái)?shù)序列”的疑惑有所幫助!接下來,請(qǐng)跟著小編一起來學(xué)習(xí)吧!

創(chuàng)新互聯(lián)是專業(yè)的石林網(wǎng)站建設(shè)公司,石林接單;提供成都網(wǎng)站設(shè)計(jì)、成都網(wǎng)站制作,網(wǎng)頁(yè)設(shè)計(jì),網(wǎng)站設(shè)計(jì),建網(wǎng)站,PHP網(wǎng)站建設(shè)等專業(yè)做網(wǎng)站服務(wù);采用PHP框架,可快速的進(jìn)行石林網(wǎng)站開發(fā)網(wǎng)頁(yè)制作和功能擴(kuò)展;專業(yè)做搜索引擎喜愛的網(wǎng)站,專業(yè)的做網(wǎng)站團(tuán)隊(duì),希望更多企業(yè)前來合作!

學(xué)習(xí)C#語(yǔ)言時(shí),經(jīng)常會(huì)遇到C#計(jì)算素?cái)?shù)序列問題,這里將介紹C#計(jì)算素?cái)?shù)序列問題的解決方法。

素?cái)?shù)尋找問題由來已久,一直是一些數(shù)學(xué)家追求的目的。關(guān)于素?cái)?shù)的定義及性質(zhì),我就不在這里多敘了,相信大家都對(duì)此了如指掌。素?cái)?shù)的尋找思路比較的簡(jiǎn)單,根據(jù)素?cái)?shù)的性質(zhì)(素?cái)?shù)應(yīng)該不能被除了1和它自身的其他數(shù)整除)我們可以從最小的素?cái)?shù)2開始,一直到比它小1的數(shù)為止,用這些數(shù)去整除它,如果它能被整除則它必定不是素?cái)?shù),這是判斷單個(gè)素?cái)?shù)的方法(這個(gè)算法思想最簡(jiǎn)單,時(shí)間復(fù)雜度***)。對(duì)于尋找比某一個(gè)給定的整數(shù)值小的所有素?cái)?shù)也可以采用這種方法,不過我們會(huì)發(fā)現(xiàn),采用這種單個(gè)判斷的方法所耗的時(shí)間比較多。比如查找不大于10的素?cái)?shù),我們必須從2開始一個(gè)個(gè)判斷,共需判斷9個(gè)數(shù),事實(shí)上按照我們后面講述的方法,只需循環(huán)2次就可以了。因此,下面的兩種方法都將基于刪除法來做。

我們來看看刪除法的思想:

1.將小于給定整數(shù)值n的所有正整數(shù)加到一個(gè)數(shù)組中;

2.刪除能夠被一些整數(shù)整除的數(shù);

3.?dāng)?shù)組中遺留的元素就是***C#計(jì)算素?cái)?shù)序列。

class prime  {  public static int[] PrimeList;  publicstatic void FindPrime(int n)  {  int[] IntList;  IntList=new int[n];  for (int p=2;p<=n;p++) IntList[p-1]=p;  for (int p=2;p<Math.Sqrt(n);p++)  {  int j=p+1;  while (j<=n)  {  if ((IntList[j-1]!=0 ) && ((IntList[j-1]% p)==0) ) IntList[j-1]=0;  jj=j+1;  }  }  int i=0;  for (int p=2;p<=n;p++)  {  if (IntList[p-1]!=0) ii=i+1;  }  PrimeList=new int[i];  i=0;  for (int p=2;p<=n;p++)  {  if (IntList[p-1]!=0)  {  PrimeList[i]=IntList[p-1];  ii=i+1;  }  }  }  }

這這個(gè)算法中,刪除的數(shù)是那些被從2開始直到n的平方根的整數(shù)整除的數(shù)。這個(gè)算法比起前面介紹的單個(gè)素?cái)?shù)的尋找方法要好,它的循環(huán)次數(shù)減少了一多半,但是這個(gè)算法還不是最理想的:

1.例如,6既能被2整除,也能被3整除,那么當(dāng)p=2時(shí),6被刪掉了一次;當(dāng)p=3時(shí),6又被刪除了一次,雖然按照我們?cè)O(shè)定的算法規(guī)則,這不會(huì)導(dǎo)致沖突(通過判斷IntList數(shù)組元素是否為0,若為0就不必重復(fù)刪除),但是這會(huì)使得算法的效率低下。

2.還有C#計(jì)算素?cái)?shù)序列元素個(gè)數(shù)時(shí),我們也走了彎路。***步,我們先計(jì)算出了數(shù)組元素大小,第二步才開始賦值,事實(shí)上這兩步我們可以減去計(jì)算數(shù)組大小這一步,可以把它放在前面完成。

3.已經(jīng)被刪除了的元素,也就是那些不是素?cái)?shù)的元素,可以不用拿他們?nèi)フ麛?shù),例如4不用拿去整除8,因?yàn)槟鼙?整除的數(shù)肯定能被2整除,已經(jīng)在前面循環(huán)中被刪除了。

基于上述考慮,我們得到了一個(gè)效率更加高的算法:

class primegood  {  public static int[] PrimeList;  public static void FindPrime(int n)  {  int[] IntList;  int len=n-1;  IntList=new int[n];  for (int p=2;p<=n;p++) IntList[p-1]=p;  for (int p=2;p<Math.Sqrt(n);p++)  {  if (IntList[p-1]==0) continue;  int j=p*p;  while (j<=n)  {  if (IntList[j-1]!=0 )  {  IntList[j-1]=0;  lenlen=len-1;  }  jj=j+p;  }  }  PrimeList=new int[len];  int i=0;  for (int p=2;p<=n;p++)  {  if (IntList[p-1]!=0)  {  PrimeList[i]=IntList[p-1];  ii=i+1;  }  }  }  }

到此,關(guān)于“如何利用C#計(jì)算素?cái)?shù)序列”的學(xué)習(xí)就結(jié)束了,希望能夠解決大家的疑惑。理論與實(shí)踐的搭配能更好的幫助大家學(xué)習(xí),快去試試吧!若想繼續(xù)學(xué)習(xí)更多相關(guān)知識(shí),請(qǐng)繼續(xù)關(guān)注創(chuàng)新互聯(lián)網(wǎng)站,小編會(huì)繼續(xù)努力為大家?guī)砀鄬?shí)用的文章!

網(wǎng)頁(yè)名稱:如何利用C#計(jì)算素?cái)?shù)序列
網(wǎng)頁(yè)路徑:http://sd-ha.com/article6/jsjsig.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站改版關(guān)鍵詞優(yōu)化、網(wǎng)站制作、品牌網(wǎng)站建設(shè)微信小程序、網(wǎng)站排名

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)

成都網(wǎng)頁(yè)設(shè)計(jì)公司