算法是一個(gè)循序漸進(jìn)的程序,它定義了一組按特定順序執(zhí)行的指令,以達(dá)到所需的結(jié)果。算法的創(chuàng)建通常獨(dú)立于底層語(yǔ)言,這意味著一種算法可以用一種以上的編程語(yǔ)言實(shí)現(xiàn)。本文講述了一些關(guān)于算法的基本知識(shí),并告訴大家該如何編寫(xiě)算法作業(yè)。

1.就數(shù)據(jù)結(jié)構(gòu)而言,算法可分為以下幾大類(lèi)
a.搜索 - 在數(shù)據(jù)結(jié)構(gòu)中搜索元素的算法。
b.排序 - 按特定順序排列元素的算法。
c.插入 - 在數(shù)據(jù)結(jié)構(gòu)中插入元素的算法。
d.Update - 更新數(shù)據(jù)結(jié)構(gòu)中現(xiàn)有元素的算法。
e.刪除 - 刪除數(shù)據(jù)結(jié)構(gòu)中現(xiàn)有元素的算法。
2.算法的屬性
并非所有程序都可以稱(chēng)為算法。算法必須具備以下屬性
a.清晰明確 - 算法必須清晰明確。算法的每個(gè)步驟(或階段)和輸入/輸出都必須清楚明了,并且必須有唯一的含義。
b.輸入 - 算法必須有 0 個(gè)或多個(gè)定義明確的輸入。
c.輸出--算法必須有一個(gè)或多個(gè)定義明確的輸出,且必須與預(yù)期結(jié)果相對(duì)應(yīng)。
d.終結(jié)性 - 算法必須在有限步數(shù)后終止。
e.可行性 - 算法必須在可用資源范圍內(nèi)可行。
f.獨(dú)立性 - 算法必須有獨(dú)立于程序代碼的分步指令。
3.如何編寫(xiě)算法?
算法的編寫(xiě)沒(méi)有明確的規(guī)則。相反,它取決于問(wèn)題和資源。編寫(xiě)算法絕不是為了支持特定的編程代碼。我們知道所有編程語(yǔ)言都有共同的基本代碼結(jié)構(gòu),如循環(huán)(do、for、while)、控制流(if-else)等。這些常用結(jié)構(gòu)可用于編寫(xiě)算法。
我們分階段編寫(xiě)算法,但情況并非總是如此。編寫(xiě)算法是一個(gè)過(guò)程,需要在問(wèn)題領(lǐng)域定義明確的情況下進(jìn)行。換句話說(shuō),我們需要知道我們要設(shè)計(jì)解決方案的問(wèn)題域。
以上就是關(guān)于美國(guó)喬治敦大學(xué)留學(xué)生如何編寫(xiě)算法的內(nèi)容。如果你對(duì)此還有疑問(wèn),或者有更多關(guān)于學(xué)業(yè)輔導(dǎo)方面需求的話,可以添加微信號(hào):hmkt131聯(lián)系留學(xué)生輔導(dǎo)網(wǎng)的Joyce老師哦。