日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

优化算法的意义,之二。

發布時間:2023/12/1 编程问答 27 豆豆
生活随笔 收集整理的這篇文章主要介紹了 优化算法的意义,之二。 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

前一篇分析了求質數的兩個算法,在代碼執行效率和系統開銷兩方面進行了比較。

這在通信系統的設計和實現中,是非常重要的兩點。因為需要同時面對的是巨大的用戶群,和復雜的業務應用,通信系統的設計經常要面臨魚與熊掌間的選擇。

用最簡單和最形象的比喻,就是使用數組還是用鏈表結構來存儲和處理數據。很多時候,硬件的資源是無法提供對數組的支持的。這時候,不得不使用鏈表結構的算法,而繼續的優化算法也非常必要。

還是用求質數的算法來做說明。? ^_^

[1]這是最原始的算法,處理9000個用戶數據,需要2600ms。面對10000個用戶時,崩潰!


var stopwatch = new Date();
var PrimeArys = [2];
var count = 1;
var isss = 0;
var MaxNum = 9000;
for(var i=3 ;i<=MaxNum;i+=2)
? {
? isss = 0;
? for(var j=3;j<(i/2);j+=2)
??? {
??? if(i%j==0){
????? isss = 1;
????? break;
??? }
? }
? if(isss == 0){
????? {
????? PrimeArys[ count++ ] = i;
????? }
??? }
? }
var t=new Date()-stopwatch;?
alert("本次運行了 "+t+" 毫秒。");

[2]分析前面的算法,發現只要不能被某個已知質數整除,就必然不能被該質數的倍數整除。所以,檢查的因子就只限于已知的質數列表就可以了。這個算法,在處理9000個數據的時候,只開銷了1593ms!

var stopwatch = new Date();
var PrimeArys = [2];
var count = 1;
var isss = 0;
var MaxNum = 9000;
for(var i=3 ;i<=MaxNum;i+=2)
? {
? isss = 0;
? for(var j=0;j<count;j++)
??? {
??? if(i%PrimeArys[j]==0){
????? isss = 1;
????? break;
??? }
? }
? if(isss == 0){
????? {
????? PrimeArys[ count++ ] = i;
????? }
??? }
? }
var t=new Date()-stopwatch;?
alert("本次運行了 "+t+" 毫秒。");

[3]繼續分析下去,沒有一個數字是可以被超過自己一半的數字整除的,所以,繼續優化,這樣處理9000個用戶只開銷了1312ms。算法的優化到此,已經可以支持15000個用戶了,這比起原始算法只支持9000,是一個巨大的提升!

var stopwatch = new Date();
var PrimeArys = [2];
var count = 1;
var isss = 0;
var MaxNum = 15000;
for(var i=3 ;i<=MaxNum;i+=2)
? {
? isss = 0;
? for(var j=0;j<count;j++)
??? {
??? if(i%PrimeArys[j]==0){
????? isss = 1;
????? break;
??? }
? }
? if(isss == 0){
????? {
????? PrimeArys[ count++ ] = i;
????? }
??? }
? }
var t=new Date()-stopwatch;?
alert("本次運行了 "+t+" 毫秒。");

如上可見,在面對真實的應用場景時,合理的算法實現的重大意義。

轉載于:https://www.cnblogs.com/Simba-5830/archive/2013/02/06/2900660.html

總結

以上是生活随笔為你收集整理的优化算法的意义,之二。的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。