1樓:l吉吉學長
在電腦科學。
中是指一種使用小的,固定數量的額外之空間來轉換資料的演算法。 原地演算法。
執行時,輸入的資料通常會被要輸出鬥笑的部份覆蓋掉。不是原地演算法有時候稱為非原地(not-in-place)或不得其所(out-of-place)。
有時候要決定乙個演算法是不是原地,而數它的輸出空間可能是比較可行的,像是底下的第乙個的 reverse 範例;如此使得它更難去嚴格地定義原地演算法。在理論上的空肆含應用像是log-space reduction,更是典型的總是忽略輸出的空間(在這些狀況,更重要的是輸出為僅能寫入)。
2樓:網友
演算法原地工作是指演算法所需的輔助空間是常量。
資料結粗納構——用c語言描述》耿國華主編 page17
若演算法執行時所需要的輔助空間相判此對於輸入資料量而言是乙個常數,則稱掘凳迅這個演算法為原地工作,輔助空間為o(1)。
3樓:網友
演算法原地工作的含義是指不需要任何額外的蔽梁晌輔助,演算法所需要的輔助空巨集鋒。
間不隨渣早著問題的規模而變化,是乙個確定的值。 .
4樓:大沈他次蘋
在電腦科學中,乙個原地演算法(in-place algorithm)是一種使用小的,固定數量的額外之空間來轉換資料的演算法。當演算法執行時,輸入的資料通常會被要輸出的部份覆蓋掉。不是原地算老察法有時候稱為非原地(not-in-place)或不得其所(out-of-place)。
乙個演算法有時候會不正當地被稱為原地演算法,只因為它用它的輸出資料會覆蓋掉它的輸入資料。事實上這並不足夠(在快速排序案例中所展示的)或是它所必須的;輸出資料的空間可能是固定的,或如果以輸出為串流資料而言,也甚至是可能無法被數清楚的。
另一方面來看,有時候要決定乙個演算法是不是原地,而數它的輸出空間可能是比較可行的,像是底下的第乙個的 reverse 範例;如此使得它更難去嚴格地定義原地演算法。在理論上的應用像是log-space reduction,更是典型的總是忽略輸出的空間(在這些狀況,更重要的是輸出為僅能寫入)。
遞迴演算法的是怎麼回事 什麼是遞迴演算法 有什麼作用
和迭代差不多,只是通過定義和呼叫函式來實現迭代把事情分解成相同的步驟重複執行直到符合某一條件時結束,再反過來遞推到最初的狀態,問題就解決了。比如定義 用的是c語言 int fun int a 在fun裡面再定義fun,這個fun都只做一件事,把a的內容和fun a 1 相乘作為返回值。這裡要有個終止...
什麼是演算法,演算法是什麼意思 謝謝
為解決一個確定類問題而採取的方法和步驟稱為演算法 algorithm 演算法 algorithm 是一系列解決問題的清晰指令,也就是說,能夠對一定規範的輸入,在有限時間內獲得所要求的輸出。一個演算法應該具有以下五個重要的特徵 1 有窮性 一個演算法必須保證執行有限步之後結束 2 確切性 演算法的每一...
什麼是程式演算法
演算法是對特定問題求解過程的描述,是指令的有限序列,每條指令完成一個或多個操作。通俗地講,就是為解決某一特定問題而採取的具體有限的操作步驟。演算法具有以下特性 1 有窮性 在有限的操作步驟內完成。有窮性是演算法的重要特性,任何一個問題的解決不論其採取什麼樣的演算法,其終歸是要把問題解決好。如果一種演...