演算法學習 中篇 持續更新

2021-08-03 15:39:15 字數 1196 閱讀 3695

本文彙總了常見的php排序演算法和查詢並進行了銷量的對比,在進行演算法設計的時候有不錯的借鑑價值。現分享給大家供參考之用。具體如下:

$arr=array();

for($i=0;$i<10000;$i++)

$t1 = microtime(true);

//這是乙個中間變數

$temp=0;

//我們要把陣列,從小到大排序

//外層迴圈

$flag=false;//這個優化之後效率會很高,一般夠用

for($i=0;$i$arr[$j+1])

}if(!$flag)

$flag=false;

}$t2 = microtime(true);

echo $t2 -$t1;

演算法部分**平均執行時間11.246428012848

效率比冒泡要高

$arr=array();

for($i=0;$i<10000;$i++)

$t1 = microtime(true);

//這是乙個中間變數

$temp=0;

for($i=0;$i$arr[$j])

}//最後交換

$temp=$arr[$i];

$arr[$i]=$arr[$minindex];

$arr[$minindex]=$temp;

}$t2 = microtime(true);

echo $t2 -$t1;

演算法部分**平均執行時間  6.1832849979401

效率又比 選擇排序法要高一些

$arr=array();

for($i=0;$i<10000;$i++)

$t1 = microtime(true);

//先預設下標為0的這個數已經是有序

for($i=1;$i= 0 && $insertval < $arr[$inserindex])

//插入(這時就給$inserindex找到適當的位置)

$arr[$inserindex+1] = $insertval;

}$t2 = microtime(true);

echo $t2 -$t1;

演算法部分**平均執行時間  2.6323339939117

PBFT演算法 持續更新

bft是區塊鏈共識演算法中,需要解決的乙個核心問題。以位元幣和以太訪為代表的pow,eos為代表的dpos,以及今後以太訪逐漸替換的共識演算法pos,這些都是公鏈演算法,解決的是共識節點眾多情況下的bft 而pbft是在聯盟鏈共識節點較少的情況下bft的一種解決方案。pbft演算法由於每個副本節點都...

CSS學習(持續更新)

學習css的過程中遇到的一些值得留下筆記的地方 1.樣式衝突 特殊性 id class 元素名本身 如元素p 順序 特殊性相同時,後出現的優先順序高 重要性important 在樣式後加 important 提高樣式重要性,這樣在遇到樣式衝突時,網頁將使用有important的樣式,而不是後出現的樣...

websocket學習 持續更新

服務端nodejs 客戶端js 首先,服務端 建立乙個server.js var clients var uuid require node uuid var websocketserver require ws server,wss new websocketserver wss.on conne...