聲明:算法和數(shù)據(jù)結(jié)構(gòu)的文章均是作者從github上翻譯過來,為方便大家閱讀。如果英語閱讀能力強(qiáng)的朋友,可以直接到swift算法俱樂部查看所有原文,以便快速學(xué)習(xí)。作者同時(shí)也在學(xué)習(xí)中,歡迎交流。
算法是引導(dǎo)計(jì)算機(jī)處理特定事情的方法。如果你知道如何烹飪,那你就了解算法!
以下是做蛋糕的方法。
1.在一個(gè)大碗里,將面粉,鹽,糖和泡打粉攪拌在一起。
2.倒入牛奶,雞蛋和黃油
3.攪拌均勻
4.用中火加熱煎鍋
5.將攪拌均勻的面糊放進(jìn)鍋里,每一個(gè)煎餅大概1/4碗。
6.處理至煎餅兩邊都成褐色即完成。
以上做蛋糕的方法包含一系列步驟,讓你可以根據(jù)步驟一步一步做下來。算法就是這樣的東西,不同的是,按步驟執(zhí)行命令的是計(jì)算機(jī),而不是廚師。
面粉,牛奶,雞蛋,黃油,所有的原料,就是算法運(yùn)行的數(shù)據(jù)。這些數(shù)據(jù)(原始的,分開的原料)是以各自的形態(tài)進(jìn)入算法,以另一種形態(tài)出來。
所以什么是數(shù)據(jù)結(jié)構(gòu)?他們是算法運(yùn)行過程中承載這些數(shù)據(jù)的容器。在做煎餅的配方中,面包粉的袋子,放面糊的碗,煎煎餅的煎鍋以及最后擺放煎餅的碟子,都是數(shù)據(jù)結(jié)構(gòu)。