現在位置: 首頁 > 演算法 > 文章
2020年02月20日 演算法 ⁄ 共 1461字 評論關閉
  快速排序(英語:Quicksort),又稱劃分交換排序,簡稱快排,一種排序演算法,最早由東尼·霍爾提出。在平均狀況下,排序 n 個項目要 O(n log n) 次比較。在最壞狀況下則需要O(n2) 次比較,但這種狀況並不常見。事實上,快速排序O(n log n) 通常明顯比其他演算法更快,因為它的內部循環可以在大部分的架構上很有效率地達成。   快速排序步驟為:   1.從數列中挑出一個元素,稱為"基準"。   2.重新排序數列,所有比基準值小的...
閱讀全文
2020年02月19日 演算法 ⁄ 共 2266字 評論關閉
  在Java 的三大 IO 模型,都會說到其中的 Non-Blocking IO 就不得不提零拷貝技術,你知道零拷貝技術嗎?   什麼是零拷貝   想要弄清楚什麼是零拷貝,首先得明確一個問題,這裡的拷貝指的是什麼?我們這裡所描述的 拷貝 指的是在應用程序中將文件從 A 拷貝到 B,其中的 A 和 B 可以是電腦上的磁碟文件,也可以是網路中的文件。像這樣的拷貝操作在操作系統中經歷了複雜的操作,首先應用程序發起讀取文件操作,讀取到文件後又...
閱讀全文
2020年02月18日 演算法 ⁄ 共 4397字 評論關閉
  本文實例講述了Fleaphp常見函數功能與用法。分享給大家供大家參考,具體如下。   Fleaphp常見函數功能與用法   1. FLEA_Db_TableDataGateway::update()用法:   例如:修改一條 uid=22 的記錄, name欄位改成"11", pass欄位改成"22",就要這樣寫:   $data = array('uid'=>22,'name'=>11,'pass'=>22);   $table->update($data);   2. FLEA_Db_TableDataGateway::updateByConditions()用法:   例如:更新所有 l...
閱讀全文
2020年02月18日 演算法 ⁄ 共 2598字 評論關閉
  從十進位向其它進位轉換,用的是就用該數字不斷除以要轉換的進位數,讀取餘數。連接一起就可以了。   < ?php   /**   *十進位轉二進位、八進位、十六進位 不足位數前面補零*   *   * @param array $datalist 傳入數據array(100,123,130)   * @param int $bin 轉換的進位可以是:2,8,16   * @return array 返回數據 array() 返回沒有數據轉換的格式   */   function decto_bin($datalist,$bin)   { ...
閱讀全文
2020年02月18日 演算法 ⁄ 共 4516字 評論關閉
  php是一門很強大的語言,可以通過PHP實現很多東西,當然也可以通過PHP來實現趣味演算法,下面就一起來看看。   php經典趣味演算法實例代碼   1、一群猴子排成一圈,按1,2,…,n依次編號。然後從第1隻開始數,數到第m只,把它踢出圈,從它後面再開始數,再數到第m只,在把它踢出去…,如此不停的進行下去,直到最後只剩下一隻猴子為止,那隻猴子就叫做大王。要求編程模擬此過程,輸入m、n, 輸出最後那個大王的編號。   func...
閱讀全文
2020年02月18日 演算法 ⁄ 共 2591字 評論關閉
  計算機最基本的操作單元是位元組,一個位元組由8個位組成,一個位只能存儲一個0或1。所有數據在計算機中都是採用二進位,即 1 和 0 的編碼存儲和運算。   這次嘗試在 PHP 中使用位運算實現四則運算,首先介紹一些基本概念:   原碼:將最高位作為符號位(0表示正,1表示負),其它數字位代表數值本身的絕對值。   反碼:正數反碼和原碼一樣;如果是負數,符號位不變,其餘各位取反。   補碼:正數補碼和原碼一樣;負數補碼...
閱讀全文
2020年02月18日 演算法 ⁄ 共 832字 評論關閉
  一、echo與print區別   echo 支持多個字元串輸出,用逗號(,)隔開,print只支持一個字元串輸出;   echo 輸出速度比print快;   echo 沒有返回值,print返回值總是1。   二、echo與print使用   echo 是一個語言結構函數,使用可以帶(),也可以不帶括弧。   例如:   PHPecho ("這是一個字元串輸出");   echo "這是一個字元串輸出";   print的使用方法與echo一致。   知識點擴展:   一般來說,PHP中動態...
閱讀全文
2020年02月18日 演算法 ⁄ 共 1216字 評論關閉
  演算法,即解決問題的方法。同一個問題,使用不同的演算法,雖然得到的結果相同,但是耗費的時間和資源是不同的。   就比如要擰一個螺母,使用扳手還是鉗子是有區別的,雖然使用鉗子也能擰螺母,但是沒有扳手好用。   「條條大路通羅馬」,解決問題的演算法有多種,這就需要判斷哪個演算法「更好」。   演算法VS程序   很多人誤以為程序就是演算法,其實不然:演算法是解決某個問題的想法、思路;而程序是在心中有演算法的前提下編寫出來...
閱讀全文
2020年02月18日 演算法 ⁄ 共 202字 評論關閉
  用Python這麼久了,只知道else與if很搭,其實跟else關係很好的關鍵詞還有while、for。   一、while   1.1 最基本的while循環   while condition:   statements   只要condition條件是True,程序就執行while代碼塊中的statements。例如:   restrict = 5   index = 1   while index   print('{}
閱讀全文
2020年02月18日 演算法 ⁄ 共 5491字 評論關閉
  RabbitMQ 是一個基於 AMQP 協議實現的企業級消息系統,想要順暢的玩耍的前提是得先了解它,本文將主要介紹 rabbitmq 的一些基本知識點.   一. 基本知識點   它是採用 Erlang 語言實現的 AMQP(Advanced Message Queued Protocol)的消息中間件,最初起源於金融系統,用在分散式系統存儲轉發消息,目前廣泛應用於各類系統用於解耦、削峰。   1.特點   首先得了解一下 rabbitmq 的特點,看看是否滿足我們的系統需求(畢...
閱讀全文